summaryrefslogtreecommitdiff
path: root/src/managers/animation/DesktopAnimationManager.cpp
diff options
context:
space:
mode:
authorVaxry <43317083+vaxerski@users.noreply.github.com>2025-10-22 11:32:42 +0100
committerGitHub <noreply@github.com>2025-10-22 11:32:42 +0100
commit057695bc3f7de5e8841c15252fc51029590895e4 (patch)
treec770ef1dc60302163df3fbe8e66022a003bf19eb /src/managers/animation/DesktopAnimationManager.cpp
parent892f642f58e6fcab7c69ecba79afb2d6ab461c89 (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.cpp9
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;
+ }
}
}