summaryrefslogtreecommitdiff
path: root/src/Window.cpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2023-06-05 09:49:17 +0200
committervaxerski <vaxry@vaxry.net>2023-06-05 09:49:21 +0200
commit1a4e6e6a4b3272118a51bebb4a45ecd642383209 (patch)
tree668cf6635f42142b1a229e49f449b13895db551f /src/Window.cpp
parente4e6ddb075605c3b3b48654de459796d72035f92 (diff)
window: recalc on deco remove
Diffstat (limited to 'src/Window.cpp')
-rw-r--r--src/Window.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/Window.cpp b/src/Window.cpp
index a1746fbc..ce3ee967 100644
--- a/src/Window.cpp
+++ b/src/Window.cpp
@@ -145,16 +145,22 @@ void CWindow::updateWindowDecos() {
for (auto& wd : m_dWindowDecorations)
wd->updateWindow(this);
+ bool recalc = false;
+
for (auto& wd : m_vDecosToRemove) {
for (auto it = m_dWindowDecorations.begin(); it != m_dWindowDecorations.end(); it++) {
if (it->get() == wd) {
- it = m_dWindowDecorations.erase(it);
+ it = m_dWindowDecorations.erase(it);
+ recalc = true;
if (it == m_dWindowDecorations.end())
break;
}
}
}
+ if (recalc)
+ g_pLayoutManager->getCurrentLayout()->recalculateWindow(this);
+
m_vDecosToRemove.clear();
}