windowManager: Don't open overview after closing the last window on a workspace

Activating the overview is fairly easy (hot corner, <super>), so doing it
automatically after closing the last window on a workspace does not save
a lot of effort; it does result in a surprising context switch when the
user does not expect the behavior.

https://bugzilla.gnome.org/show_bug.cgi?id=662581
This commit is contained in:
Florian Müllner 2013-08-30 01:56:38 +02:00
parent 22cd18571b
commit 39afb58472

View File

@ -250,9 +250,6 @@ const WorkspaceTracker = new Lang.Class({
let activeWorkspaceIndex = global.screen.get_active_workspace_index(); let activeWorkspaceIndex = global.screen.get_active_workspace_index();
let removingCurrentWorkspace = (emptyWorkspaces[activeWorkspaceIndex] && let removingCurrentWorkspace = (emptyWorkspaces[activeWorkspaceIndex] &&
activeWorkspaceIndex < emptyWorkspaces.length - 1); activeWorkspaceIndex < emptyWorkspaces.length - 1);
// Don't enter the overview when removing multiple empty workspaces at startup
let showOverview = (removingCurrentWorkspace &&
!emptyWorkspaces.every(function(x) { return x; }));
if (removingCurrentWorkspace) { if (removingCurrentWorkspace) {
// "Merge" the empty workspace we are removing with the one at the end // "Merge" the empty workspace we are removing with the one at the end
@ -268,9 +265,6 @@ const WorkspaceTracker = new Lang.Class({
if (removingCurrentWorkspace) { if (removingCurrentWorkspace) {
global.screen.get_workspace_by_index(global.screen.n_workspaces - 1).activate(global.get_current_time()); global.screen.get_workspace_by_index(global.screen.n_workspaces - 1).activate(global.get_current_time());
this._wm.unblockAnimations(); this._wm.unblockAnimations();
if (!Main.overview.visible && showOverview)
Main.overview.show();
} }
this._checkWorkspacesId = 0; this._checkWorkspacesId = 0;