summaryrefslogtreecommitdiff
path: root/src/layout
diff options
context:
space:
mode:
authorFelix Dick <felix.dick@web.de>2022-09-29 21:13:48 +0200
committerFelix Dick <felix.dick@web.de>2022-09-29 21:13:48 +0200
commite5dced8b3fccfe0048a55da197b8851e956a08ef (patch)
tree0a4cdbd89d68aff821cac33cb6936ca02580bb72 /src/layout
parentb38e7b596f03dc6f7f6adec36df5bea2325642b5 (diff)
parentda40bf823f2f307e439f4bd85c405d9e612c2df5 (diff)
Merge branch 'main' into fix_rounding_in_size_changing_windows
Diffstat (limited to 'src/layout')
-rw-r--r--src/layout/DwindleLayout.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp
index 9ded8f95..ba59034c 100644
--- a/src/layout/DwindleLayout.cpp
+++ b/src/layout/DwindleLayout.cpp
@@ -520,6 +520,17 @@ void CHyprDwindleLayout::onWindowRemovedTiling(CWindow* pWindow) {
PSIBLING->size = PPARENT->size;
PSIBLING->pParent = PPARENT->pParent;
+ if (PSIBLING->isGroupMember()) {
+ // apply to all group members
+ SDwindleNodeData* current = PSIBLING->pNextGroupMember;
+
+ while (current != PSIBLING) {
+ current->position = PPARENT->position;
+ current->size = PPARENT->size;
+ current = current->pNextGroupMember;
+ }
+ }
+
if (PPARENT->pParent != nullptr) {
if (PPARENT->pParent->children[0] == PPARENT) {
PPARENT->pParent->children[0] = PSIBLING;