Set current variant when manual GTK variants are enabled

This commit is contained in:
Romain Vigier
2020-08-05 12:08:14 +02:00
parent 271bfea384
commit 9c0894d4a0
+10 -1
View File
@@ -46,6 +46,7 @@ var GtkThemer = class {
this._gtkVariantsStatusChangedConnect = null; this._gtkVariantsStatusChangedConnect = null;
this._gtkVariantChangedConnect = null; this._gtkVariantChangedConnect = null;
this._gtkThemeChangedConnect = null; this._gtkThemeChangedConnect = null;
this._manualGtkVariantsChangedConnect = null;
this._timeChangedConnect = null; this._timeChangedConnect = null;
} }
@@ -55,8 +56,8 @@ var GtkThemer = class {
this._watchStatus(); this._watchStatus();
this._saveOriginalTheme(); this._saveOriginalTheme();
if (e.settingsManager.gtkVariantsEnabled) { if (e.settingsManager.gtkVariantsEnabled) {
this._updateVariants();
this._connectSettings(); this._connectSettings();
this._updateVariants();
this._connectTimer(); this._connectTimer();
} }
} catch (error) { } catch (error) {
@@ -92,6 +93,7 @@ var GtkThemer = class {
logDebug('Connecting GTK Themer to settings...'); logDebug('Connecting GTK Themer to settings...');
this._gtkVariantChangedConnect = e.settingsManager.connect('gtk-variant-changed', this._onGtkVariantChanged.bind(this)); this._gtkVariantChangedConnect = e.settingsManager.connect('gtk-variant-changed', this._onGtkVariantChanged.bind(this));
this._gtkThemeChangedConnect = e.settingsManager.connect('gtk-theme-changed', this._onGtkThemeChanged.bind(this)); this._gtkThemeChangedConnect = e.settingsManager.connect('gtk-theme-changed', this._onGtkThemeChanged.bind(this));
this._manualGtkVariantsChangedConnect = e.settingsManager.connect('manual-gtk-variants-changed', this._onManualGtkVariantsChanged.bind(this));
} }
_disconnectSettings() { _disconnectSettings() {
@@ -139,6 +141,13 @@ var GtkThemer = class {
} }
} }
_onManualGtkVariantsChanged(_settings, enabled) {
this.disable();
this.enable();
if (enabled && e.timer.time)
this._setVariant(e.timer.time);
}
_onTimeChanged(_timer, newTime) { _onTimeChanged(_timer, newTime) {
this._setVariant(newTime); this._setVariant(newTime);
} }