diff options
| author | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2026-04-04 09:06:07 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-04 14:06:07 +0100 |
| commit | 29cf6264a29752de3ed74cacbac6b1d2dbf1ad55 (patch) | |
| tree | 2d052b77a54acadda94fc5b9825f8f18562ae640 /src/desktop/view/Window.cpp | |
| parent | 43f7f683d0ac667f2a5273f5e9a3ec0fc0d999e1 (diff) | |
desktop/window: reduce window deco updates (#13980)
AVARDAMAGE_ENTIRE doesn't mean the geometry changed, so no point in an expensive update
Diffstat (limited to 'src/desktop/view/Window.cpp')
| -rw-r--r-- | src/desktop/view/Window.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/desktop/view/Window.cpp b/src/desktop/view/Window.cpp index 2a388d68..e9f22021 100644 --- a/src/desktop/view/Window.cpp +++ b/src/desktop/view/Window.cpp @@ -658,12 +658,21 @@ void CWindow::onMap() { false); m_realSize->setUpdateCallback([this](auto) { - if (m_isMapped) - m_events.resize.emit(); + if (!m_isMapped) + return; + + updateWindowDecos(); + + m_events.resize.emit(); }); m_realPosition->setUpdateCallback([this](auto) { - if (m_isMapped && m_monitor != m_prevMonitor) { + if (!m_isMapped) + return; + + updateWindowDecos(); + + if (m_monitor != m_prevMonitor) { m_prevMonitor = m_monitor; m_events.monitorChanged.emit(); } |
