[gnome-shell] windowManager: Use the correct schema for 'dynamic-workspaces'
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] windowManager: Use the correct schema for 'dynamic-workspaces'
- Date: Fri, 7 Jun 2013 18:04:23 +0000 (UTC)
commit 5cd913a527f9983ba1027e03443abc89185c6dcc
Author: Florian Müllner <fmuellner gnome org>
Date: Thu Jun 6 18:47:56 2013 +0200
windowManager: Use the correct schema for 'dynamic-workspaces'
We currently monitor the shell's override schema for changes to
the 'dynamic-workspaces' key, which ends up being the wrong
schema in classic mode. With the new ability to use mode-specific
overides, we can finally fix this.
https://bugzilla.gnome.org/show_bug.cgi?id=701717
js/ui/main.js | 6 ++++++
js/ui/windowManager.js | 4 ++--
2 files changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/main.js b/js/ui/main.js
index aec10d1..0774b3a 100644
--- a/js/ui/main.js
+++ b/js/ui/main.js
@@ -71,6 +71,7 @@ let _startDate;
let _defaultCssStylesheet = null;
let _cssStylesheet = null;
let _a11ySettings = null;
+let dynamicWorkspacesSchema = null;
function _sessionUpdated() {
_loadDefaultStylesheet();
@@ -121,6 +122,11 @@ function _initializePrefs() {
let keys = new Gio.Settings({ schema: sessionMode.overridesSchema }).list_keys();
for (let i = 0; i < keys.length; i++)
Meta.prefs_override_preference_schema(keys[i], sessionMode.overridesSchema);
+
+ if (keys.indexOf('dynamic-workspaces') > -1)
+ dynamicWorkspacesSchema = sessionMode.overridesSchema;
+ else
+ dynamicWorkspacesSchema = 'org.gnome.mutter';
}
function _initializeUI() {
diff --git a/js/ui/windowManager.js b/js/ui/windowManager.js
index 5f96a5f..89ccf69 100644
--- a/js/ui/windowManager.js
+++ b/js/ui/windowManager.js
@@ -93,8 +93,8 @@ const WorkspaceTracker = new Lang.Class({
global.screen.connect('window-left-monitor', Lang.bind(this, this._windowLeftMonitor));
global.screen.connect('restacked', Lang.bind(this, this._windowsRestacked));
- this._overrideSettings = new Gio.Settings({ schema: 'org.gnome.shell.overrides' });
- this._overrideSettings.connect('changed::dynamic-workspaces', Lang.bind(this,
this._queueCheckWorkspaces));
+ this._workspaceSettings = new Gio.Settings({ schema: Main.dynamicWorkspacesSchema });
+ this._workspaceSettings.connect('changed::dynamic-workspaces', Lang.bind(this,
this._queueCheckWorkspaces));
this._nWorkspacesChanged();
},
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]