windowManager: detect change to a non-existent WS
When using dynamic workspaces, it is possible to try to change to a non-existent one if the user defines hotkeys for changing to desktop 1, 2, 3... This case is not detected, and gnome shell shows an error: JS ERROR: TypeError: workspace is null actionMoveWorkspace@resource:///org/gnome/shell/ui/windowManager.js:2130:13 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 _showWorkspaceSwitcher@resource:///org/gnome/shell/ui/windowManager.js:2104:13 wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22 This patch adds a check before trying to change the workspace, to avoid switching to a non-existent one. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/365
This commit is contained in:
parent
3dcb593a71
commit
d75a3484d6
@ -2086,7 +2086,7 @@ var WindowManager = new Lang.Class({
|
|||||||
|
|
||||||
direction = Meta.MotionDirection[target.toUpperCase()];
|
direction = Meta.MotionDirection[target.toUpperCase()];
|
||||||
newWs = workspaceManager.get_active_workspace().get_neighbor(direction);
|
newWs = workspaceManager.get_active_workspace().get_neighbor(direction);
|
||||||
} else if (target > 0) {
|
} else if ((target > 0) && (target <= workspaceManager.n_workspaces)) {
|
||||||
target--;
|
target--;
|
||||||
newWs = workspaceManager.get_workspace_by_index(target);
|
newWs = workspaceManager.get_workspace_by_index(target);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user