diff options
| author | MightyPlaza <123664421+MightyPlaza@users.noreply.github.com> | 2024-08-03 17:50:08 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-03 19:50:08 +0200 |
| commit | 51ffd7fa6f186419276e5d3d5fe141a3fdb3c55c (patch) | |
| tree | 0a3d093bcefa0abef55e72ae62d50505a366b8f7 /src | |
| parent | ae50f8614d92132d918663ea7551bd68eb13953a (diff) | |
decorations: fix infinite recursion on no_gaps when only (#7169)
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprBorderDecoration.cpp
Diffstat (limited to 'src')
| -rw-r--r-- | src/layout/DwindleLayout.cpp | 5 | ||||
| -rw-r--r-- | src/layout/MasterLayout.cpp | 5 | ||||
| -rw-r--r-- | src/render/decorations/CHyprBorderDecoration.cpp | 2 |
3 files changed, 5 insertions, 7 deletions
diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index 7253275d..f287056f 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -141,7 +141,6 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode, bool for PWINDOW->unsetWindowData(PRIORITY_LAYOUT); PWINDOW->updateWindowData(); - PWINDOW->updateWindowDecos(); static auto PNOGAPSWHENONLY = CConfigValue<Hyprlang::INT>("dwindle:no_gaps_when_only"); static auto PGAPSINDATA = CConfigValue<Hyprlang::CUSTOMTYPE>("general:gaps_in"); @@ -178,6 +177,8 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode, bool for return; } + PWINDOW->updateWindowDecos(); + auto calcPos = PWINDOW->m_vPosition; auto calcSize = PWINDOW->m_vSize; @@ -245,8 +246,6 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode, bool for g_pHyprRenderer->damageWindow(PWINDOW); } - - PWINDOW->updateWindowDecos(); } void CHyprDwindleLayout::onWindowCreatedTiling(PHLWINDOW pWindow, eDirection direction) { diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp index e3aaa767..be00168f 100644 --- a/src/layout/MasterLayout.cpp +++ b/src/layout/MasterLayout.cpp @@ -650,7 +650,6 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { PWINDOW->unsetWindowData(PRIORITY_LAYOUT); PWINDOW->updateWindowData(); - PWINDOW->updateWindowDecos(); static auto PNOGAPSWHENONLY = CConfigValue<Hyprlang::INT>("master:no_gaps_when_only"); static auto PANIMATE = CConfigValue<Hyprlang::INT>("misc:animate_manual_resizes"); @@ -689,6 +688,8 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { return; } + PWINDOW->updateWindowDecos(); + auto calcPos = PWINDOW->m_vPosition; auto calcSize = PWINDOW->m_vSize; @@ -731,8 +732,6 @@ void CHyprMasterLayout::applyNodeDataToWindow(SMasterNodeData* pNode) { g_pHyprRenderer->damageWindow(PWINDOW); } - - PWINDOW->updateWindowDecos(); } bool CHyprMasterLayout::isWindowTiled(PHLWINDOW pWindow) { diff --git a/src/render/decorations/CHyprBorderDecoration.cpp b/src/render/decorations/CHyprBorderDecoration.cpp index ddb38c6e..f5e6e945 100644 --- a/src/render/decorations/CHyprBorderDecoration.cpp +++ b/src/render/decorations/CHyprBorderDecoration.cpp @@ -93,7 +93,7 @@ void CHyprBorderDecoration::updateWindow(PHLWINDOW) { m_iLastBorderSize = borderSize; - g_pEventLoopManager->doLater([this]() { g_pDecorationPositioner->repositionDeco(this); }); + g_pDecorationPositioner->repositionDeco(this); } void CHyprBorderDecoration::damageEntire() { |
