diff options
| author | Vaxry <43317083+vaxerski@users.noreply.github.com> | 2025-10-22 11:32:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-22 11:32:42 +0100 |
| commit | 057695bc3f7de5e8841c15252fc51029590895e4 (patch) | |
| tree | c770ef1dc60302163df3fbe8e66022a003bf19eb /src/managers/animation/DesktopAnimationManager.cpp | |
| parent | 892f642f58e6fcab7c69ecba79afb2d6ab461c89 (diff) | |
desktopAnimationMgr: don't set fade 0 for members of a fs group (#12091)
fixes a flash of opacity that shouldnt be there
Diffstat (limited to 'src/managers/animation/DesktopAnimationManager.cpp')
| -rw-r--r-- | src/managers/animation/DesktopAnimationManager.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/managers/animation/DesktopAnimationManager.cpp b/src/managers/animation/DesktopAnimationManager.cpp index 88f0c826..f156dfa9 100644 --- a/src/managers/animation/DesktopAnimationManager.cpp +++ b/src/managers/animation/DesktopAnimationManager.cpp @@ -459,6 +459,8 @@ 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) { @@ -467,8 +469,11 @@ void CDesktopAnimationManager::setFullscreenFadeAnimation(PHLWORKSPACE ws, eAnim if (!FULLSCREEN) *w->m_alpha = 1.F; - else if (!w->isFullscreen()) - *w->m_alpha = !w->m_createdOverFullscreen ? 0.f : 1.f; + else if (!w->isFullscreen()) { + const bool CREATED_OVER_FS = w->m_createdOverFullscreen; + const bool IS_IN_GROUP_OF_FS = FSWINDOW && FSWINDOW->hasInGroup(w); + *w->m_alpha = !CREATED_OVER_FS && !IS_IN_GROUP_OF_FS ? 0.f : 1.f; + } } } |
