From 24ab95bdd76dd189aa9a190d75f19ee94f733077 Mon Sep 17 00:00:00 2001 From: Xaver Hugl Date: Tue, 3 Sep 2024 14:37:39 +0200 Subject: [PATCH] workspace: don't rearrange immediately when a window with struts gets removed Otherwise, rearrange can happen on intermediate output configurations, as layer shell windows can get closed in response to outputs being disabled. That rearrange on intermediate output configurations can confuse the placement tracker logic, which may then move windows to weird locations or even offscreen CCBUG: 479694 --- src/workspace.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/workspace.cpp b/src/workspace.cpp index 18c72dbe07..66ed9186c4 100644 --- a/src/workspace.cpp +++ b/src/workspace.cpp @@ -868,7 +868,7 @@ void Workspace::removeWindow(Window *window) setupWindowShortcutDone(false); } if (window->hasStrut()) { - rearrange(); + scheduleRearrange(); } Q_EMIT windowRemoved(window);