From 3b207d29bdaf4c718a8878456bb17f2a67f2d9f4 Mon Sep 17 00:00:00 2001 From: user111111111111111111111111111111111 <192911676+user111111111111111111111111111111111@users.noreply.github.com> Date: Sun, 26 Jan 2025 19:06:50 +0000 Subject: [PATCH] core: update groups on movewindow (#9183) --- src/layout/DwindleLayout.cpp | 9 +++++++++ src/layout/MasterLayout.cpp | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index df6c3bde..8aaafaa3 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -847,6 +847,15 @@ void CHyprDwindleLayout::moveWindowTo(PHLWINDOW pWindow, const std::string& dir, pWindow->m_pMonitor = PMONITORFOCAL; } + pWindow->updateGroupOutputs(); + if (!pWindow->m_sGroupData.pNextWindow.expired()) { + PHLWINDOW next = pWindow->m_sGroupData.pNextWindow.lock(); + while (next != pWindow) { + next->updateToplevel(); + next = next->m_sGroupData.pNextWindow.lock(); + } + } + onWindowCreatedTiling(pWindow); m_vOverrideFocalPoint.reset(); diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp index 8aa15e42..4773147f 100644 --- a/src/layout/MasterLayout.cpp +++ b/src/layout/MasterLayout.cpp @@ -945,6 +945,15 @@ void CHyprMasterLayout::moveWindowTo(PHLWINDOW pWindow, const std::string& dir, if (silent) g_pCompositor->focusWindow(PWINDOW2); } + + pWindow->updateGroupOutputs(); + if (!pWindow->m_sGroupData.pNextWindow.expired()) { + PHLWINDOW next = pWindow->m_sGroupData.pNextWindow.lock(); + while (next != pWindow) { + next->updateToplevel(); + next = next->m_sGroupData.pNextWindow.lock(); + } + } } void CHyprMasterLayout::switchWindows(PHLWINDOW pWindow, PHLWINDOW pWindow2) {