diff options
author | Aqa-Ib <[email protected]> | 2024-12-21 16:35:47 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2024-12-21 17:35:47 +0100 |
commit | 8e8073c42172feaf5600879f475322ab7363f017 (patch) | |
tree | 95435bdd4e72244a3a168a968beb7e6a4f00636e | |
parent | 52ee7a874805bbcbd8f470937c5aacd0c055f7f8 (diff) | |
download | Hyprland-8e8073c42172feaf5600879f475322ab7363f017.tar.gz Hyprland-8e8073c42172feaf5600879f475322ab7363f017.zip |
groups: honor group lock window rule (#8782)
-rw-r--r-- | src/layout/IHyprLayout.cpp | 2 | ||||
-rw-r--r-- | src/render/decorations/CHyprGroupBarDecoration.cpp | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/layout/IHyprLayout.cpp b/src/layout/IHyprLayout.cpp index cbea46c5..354fc09f 100644 --- a/src/layout/IHyprLayout.cpp +++ b/src/layout/IHyprLayout.cpp @@ -205,6 +205,7 @@ bool IHyprLayout::onWindowCreatedAutoGroup(PHLWINDOW pWindow) { (*USECURRPOS ? OPENINGON : OPENINGON->getGroupTail())->insertWindowToGroup(pWindow); OPENINGON->setGroupCurrent(pWindow); + pWindow->applyGroupRules(); pWindow->updateWindowDecos(); recalculateWindow(pWindow); @@ -364,6 +365,7 @@ void IHyprLayout::onEndDragWindow() { static auto USECURRPOS = CConfigValue<Hyprlang::INT>("group:insert_after_current"); (*USECURRPOS ? pWindow : pWindow->getGroupTail())->insertWindowToGroup(DRAGGINGWINDOW); pWindow->setGroupCurrent(DRAGGINGWINDOW); + DRAGGINGWINDOW->applyGroupRules(); DRAGGINGWINDOW->updateWindowDecos(); if (!DRAGGINGWINDOW->getDecorationByType(DECORATION_GROUPBAR)) diff --git a/src/render/decorations/CHyprGroupBarDecoration.cpp b/src/render/decorations/CHyprGroupBarDecoration.cpp index 3138c326..0aee6157 100644 --- a/src/render/decorations/CHyprGroupBarDecoration.cpp +++ b/src/render/decorations/CHyprGroupBarDecoration.cpp @@ -468,6 +468,7 @@ bool CHyprGroupBarDecoration::onEndWindowDragOnDeco(const Vector2D& pos, PHLWIND std::swap(pDraggedHead->m_sGroupData.head, pWindowInsertEnd->m_sGroupData.head); m_pWindow->setGroupCurrent(pDraggedWindow); + pDraggedWindow->applyGroupRules(); pDraggedWindow->updateWindowDecos(); g_pLayoutManager->getCurrentLayout()->recalculateWindow(pDraggedWindow); |