Skip to content

Commit 7dac334

Browse files
committed
windowManager.js: Complete the workspace switch immediately if
no windows end up being animated. Completion was dependent upon at least one window being involved in the transition, so when no windows were visible, it was leaving the compositor in an undefined state. Fixes #11005.
1 parent bda9dc5 commit 7dac334

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

js/ui/windowManager.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1136,7 +1136,8 @@ var WindowManager = class WindowManager {
11361136
// Muffin 5.2 window.showing_on_its_workspace() no longer
11371137
// ends up filtering the desktop window (If I re-add it, it
11381138
// breaks things elsewhere that rely on the new behavior).
1139-
if (meta_window.get_window_type() === Meta.WindowType.DESKTOP) {
1139+
if (meta_window.get_window_type() === Meta.WindowType.DESKTOP ||
1140+
meta_window.get_window_type() === Meta.WindowType.OVERRIDE_OTHER) {
11401141
continue;
11411142
}
11421143

@@ -1185,6 +1186,11 @@ var WindowManager = class WindowManager {
11851186
}
11861187
}
11871188

1189+
if (to_windows.size === 0 && from_windows.size === 0) {
1190+
this._cinnamonwm.completed_switch_workspace();
1191+
return;
1192+
}
1193+
11881194
kill_id = this._cinnamonwm.connect('kill-switch-workspace', cinnamonwm => {
11891195
let iter = to_windows.forEach((actor) => {
11901196
cleanup_window_effect(actor);

0 commit comments

Comments
 (0)