windowManager: Don't move sticky windows when inserting workspace
Inserting a workspace is implemented by appending a new workspace, then shifting all windows after the "new" workspace up. This has an unintended side effect on sticky windows, as changing its workspace will unstick it. Fix this by excluding sticky windows - there's little point in moving them anyway, given that they should be on all workspaces (including the original workspace and the target one). https://gitlab.gnome.org/GNOME/gnome-shell/issues/1151
This commit is contained in:
parent
eb9000576c
commit
8b9c8ddb1e
@ -1218,6 +1218,10 @@ var WindowManager = class {
|
|||||||
// Same for OR windows
|
// Same for OR windows
|
||||||
if (window.is_override_redirect())
|
if (window.is_override_redirect())
|
||||||
return;
|
return;
|
||||||
|
// Sticky windows don't need moving, in fact moving would
|
||||||
|
// unstick them
|
||||||
|
if (window.on_all_workspaces)
|
||||||
|
return;
|
||||||
// Windows on workspaces below pos don't need moving
|
// Windows on workspaces below pos don't need moving
|
||||||
let index = window.get_workspace().index();
|
let index = window.get_workspace().index();
|
||||||
if (index < pos)
|
if (index < pos)
|
||||||
|
Loading…
Reference in New Issue
Block a user