From 31e025dbe04dbe1836ea759f6b6e2ea09591fb23 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Wed, 29 Apr 2026 18:51:19 +0100 Subject: desktop/window: refactor over fullscreen state --- src/managers/animation/DesktopAnimationManager.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src/managers/animation/DesktopAnimationManager.cpp') diff --git a/src/managers/animation/DesktopAnimationManager.cpp b/src/managers/animation/DesktopAnimationManager.cpp index 3ef9ff00..2b7cb459 100644 --- a/src/managers/animation/DesktopAnimationManager.cpp +++ b/src/managers/animation/DesktopAnimationManager.cpp @@ -467,10 +467,9 @@ void CDesktopAnimationManager::setFullscreenFadeAnimation(PHLWORKSPACE ws, eAnim const auto FULLSCREEN = type == ANIMATION_TYPE_IN; - const auto FSWINDOW = ws->getFullscreenWindow(); - for (auto const& w : g_pCompositor->m_windows) { if (w->m_workspace == ws) { + w->updateFullscreenInputState(); if (w->m_fadingOut || w->m_pinned || w->isFullscreen()) continue; @@ -478,9 +477,7 @@ void CDesktopAnimationManager::setFullscreenFadeAnimation(PHLWORKSPACE ws, eAnim if (!FULLSCREEN) *w->alpha(WINDOW_ALPHA_FULLSCREEN) = 1.F; else if (!w->isFullscreen()) { - const bool CREATED_OVER_FS = w->m_createdOverFullscreen; - const bool IS_IN_GROUP_OF_FS = FSWINDOW && FSWINDOW->m_group && FSWINDOW->m_group->has(w); - *w->alpha(WINDOW_ALPHA_FULLSCREEN) = !CREATED_OVER_FS && !IS_IN_GROUP_OF_FS ? 0.f : 1.f; + *w->alpha(WINDOW_ALPHA_FULLSCREEN) = w->isAllowedOverFullscreen() ? 1.f : 0.f; } } } @@ -500,6 +497,7 @@ void CDesktopAnimationManager::setFullscreenFloatingFade(PHLWINDOW pWindow, floa return; *pWindow->alpha(WINDOW_ALPHA_FULLSCREEN) = fade; + pWindow->updateFullscreenInputState(); } void CDesktopAnimationManager::overrideFullscreenFadeAmount(PHLWORKSPACE ws, float fade, PHLWINDOW exclude) { @@ -512,6 +510,7 @@ void CDesktopAnimationManager::overrideFullscreenFadeAmount(PHLWORKSPACE ws, flo continue; *w->alpha(WINDOW_ALPHA_FULLSCREEN) = fade; + w->updateFullscreenInputState(); } } -- cgit v1.2.3