29 lines
823 B
JavaScript
29 lines
823 B
JavaScript
import {Switches} from '../common.js';
|
|
import {enableWindowTheme} from '../theme.js';
|
|
export default class SwitchHandler {
|
|
_switchs;
|
|
_windowManager;
|
|
constructor(windowManager, extension) {
|
|
this._windowManager = windowManager;
|
|
this._switchs = Switches.getSwitches();
|
|
this._switchs.forEach(key => {
|
|
extension._settings?.connect(`changed::${key}`, () => this._onSwitchChanged(key, extension));
|
|
});
|
|
}
|
|
|
|
_onSwitchChanged(key, extension) {
|
|
switch (key) {
|
|
case 'header-bar':
|
|
if (extension.metadata && extension._settings?.get_boolean('header-bar'))
|
|
enableWindowTheme();
|
|
|
|
else if (extension.metadata)
|
|
enableWindowTheme();
|
|
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
}
|