summaryrefslogtreecommitdiff
path: root/src/desktop/view/Window.cpp
diff options
context:
space:
mode:
authorLichie <90825386+lichie567@users.noreply.github.com>2025-12-15 14:19:13 -0800
committerGitHub <noreply@github.com>2025-12-15 22:19:13 +0000
commit6e09eb2e6cc1744687f158f2a576de844be59f4e (patch)
treee28dc95412e53324cc76109126b739812706ac35 /src/desktop/view/Window.cpp
parent6b491e4d6ba12598b82363c4c5cbcc26a2a06ae6 (diff)
desktop/windowRules: fix disabling binary window rules with override (#12635)
Diffstat (limited to 'src/desktop/view/Window.cpp')
-rw-r--r--src/desktop/view/Window.cpp19
1 files changed, 6 insertions, 13 deletions
diff --git a/src/desktop/view/Window.cpp b/src/desktop/view/Window.cpp
index 2fc15566..0eadc326 100644
--- a/src/desktop/view/Window.cpp
+++ b/src/desktop/view/Window.cpp
@@ -2047,14 +2047,10 @@ void CWindow::mapWindow() {
requestedFSMonitor = MONITOR_INVALID;
}
- if (m_ruleApplicator->static_.floating.has_value())
- m_isFloating = m_ruleApplicator->static_.floating.value();
-
- if (m_ruleApplicator->static_.pseudo)
- m_isPseudotiled = true;
-
- if (m_ruleApplicator->static_.noInitialFocus)
- m_noInitialFocus = true;
+ m_isFloating = m_ruleApplicator->static_.floating.value_or(m_isFloating);
+ m_isPseudotiled = m_ruleApplicator->static_.pseudo.value_or(m_isPseudotiled);
+ m_noInitialFocus = m_ruleApplicator->static_.noInitialFocus.value_or(m_noInitialFocus);
+ m_pinned = m_ruleApplicator->static_.pin.value_or(m_pinned);
if (m_ruleApplicator->static_.fullscreenStateClient || m_ruleApplicator->static_.fullscreenStateInternal) {
requestedFSState = Desktop::View::SFullscreenState{
@@ -2080,13 +2076,10 @@ void CWindow::mapWindow() {
}
}
- if (m_ruleApplicator->static_.pin)
- m_pinned = true;
-
- if (m_ruleApplicator->static_.fullscreen)
+ if (m_ruleApplicator->static_.fullscreen.value_or(false))
requestedInternalFSMode = FSMODE_FULLSCREEN;
- if (m_ruleApplicator->static_.maximize)
+ if (m_ruleApplicator->static_.maximize.value_or(false))
requestedInternalFSMode = FSMODE_MAXIMIZED;
if (!m_ruleApplicator->static_.group.empty()) {