[gnome-shell] overviewControls: Adjust heuristic for hiding workspace switcher
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] overviewControls: Adjust heuristic for hiding workspace switcher
- Date: Wed, 30 Apr 2014 17:33:25 +0000 (UTC)
commit 50f0fc4e23fe62ae807f9066afae888502435ce8
Author: Florian Müllner <fmuellner gnome org>
Date: Sat Oct 22 16:48:01 2011 +0200
overviewControls: Adjust heuristic for hiding workspace switcher
The workspace switcher should be expanded when workspaces are in use.
Our current implementation assumes that workspaces are used when there
are windows on at least two workspaces. However workspaces are already
used when moving from a non-empty workspace to an empty one (presumably
with the intention to launch something on that workspace), so tweak the
heuristic accordingly.
https://bugzilla.gnome.org/show_bug.cgi?id=662457
js/ui/overviewControls.js | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/overviewControls.js b/js/ui/overviewControls.js
index ade0f19..b396ff0 100644
--- a/js/ui/overviewControls.js
+++ b/js/ui/overviewControls.js
@@ -259,13 +259,18 @@ const ThumbnailsSlider = new Lang.Class({
Main.layoutManager.connect('monitors-changed', Lang.bind(this, this._updateSlide));
this.actor.connect('notify::hover', Lang.bind(this, this._updateSlide));
+ global.window_manager.connect('switch-workspace', Lang.bind(this, this._updateSlide));
this._thumbnailsBox.actor.bind_property('visible', this.actor, 'visible',
GObject.BindingFlags.SYNC_CREATE);
},
_getAlwaysZoomOut: function() {
// Always show the pager when hover, during a drag, or if workspaces are
- // actually used, e.g. there are windows on more than one
- let alwaysZoomOut = this.actor.hover || this._inDrag || !Meta.prefs_get_dynamic_workspaces() ||
global.screen.n_workspaces > 2;
+ // actually used, e.g. there are windows on any non-active workspace
+ let alwaysZoomOut = this.actor.hover ||
+ this._inDrag ||
+ !Meta.prefs_get_dynamic_workspaces() ||
+ global.screen.n_workspaces > 2 ||
+ global.screen.get_active_workspace_index() != 0;
if (!alwaysZoomOut) {
let monitors = Main.layoutManager.monitors;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]