diff options
| author | Sungyoon Cho <sungyoon@sungyooncho.dev> | 2024-04-11 01:26:11 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-10 17:26:11 +0100 |
| commit | c35fa9bacc960fb37ebac8541eadc2f4696b287c (patch) | |
| tree | 86db2e1ce6038614f7e2443d5d61d06aa863c455 /src/Compositor.cpp | |
| parent | b573c2012587a4a4d84a306a157db77bf4c3566e (diff) | |
workspace: update windows when selector match could change (#5533)
* workspace: update windows when group updates
* workspace: update windows when floating toggle
* workspace: update windows when stop dragging window by mouse
Diffstat (limited to 'src/Compositor.cpp')
| -rw-r--r-- | src/Compositor.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 8a717600..4ce4b097 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -2375,6 +2375,18 @@ void CCompositor::updateWorkspaceWindowDecos(const int& id) { } } +void CCompositor::updateWorkspaceSpecialRenderData(const int& id) { + const auto PWORKSPACE = getWorkspaceByID(id); + const auto WORKSPACERULE = PWORKSPACE ? g_pConfigManager->getWorkspaceRuleFor(PWORKSPACE) : SWorkspaceRule{}; + + for (auto& w : m_vWindows) { + if (w->workspaceID() != id) + continue; + + w->updateSpecialRenderData(WORKSPACERULE); + } +} + void CCompositor::scheduleFrameForMonitor(CMonitor* pMonitor) { if ((m_sWLRSession && !m_sWLRSession->active) || !m_bSessionActive) return; |
