summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-12-22 16:04:10 +0000
committerVaxry <vaxry@vaxry.net>2024-12-22 16:04:10 +0000
commit1cc1a46c2e154a27750b81307040d3bf7ff0f64f (patch)
tree9639acd85448bfcbd797a0c5a34241ad650ac36b /src/Compositor.cpp
parent31422ae25dee33dd000798b64a80bd7fd08d2ece (diff)
core: fade in windows when they are brought from invisible workspaces
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 5e8c8048..9bcbdb0f 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -2649,6 +2649,7 @@ void CCompositor::moveWindowToWorkspaceSafe(PHLWINDOW pWindow, PHLWORKSPACE pWor
const bool FULLSCREEN = pWindow->isFullscreen();
const auto FULLSCREENMODE = pWindow->m_sFullscreenState.internal;
+ const bool WASVISIBLE = pWindow->m_pWorkspace && pWindow->m_pWorkspace->isVisible();
if (FULLSCREEN)
setWindowFullscreenInternal(pWindow, FSMODE_NONE);
@@ -2716,6 +2717,11 @@ void CCompositor::moveWindowToWorkspaceSafe(PHLWINDOW pWindow, PHLWORKSPACE pWor
if (pWindow->m_pWorkspace)
pWindow->m_pWorkspace->updateWindows();
g_pCompositor->updateSuspendedStates();
+
+ if (!WASVISIBLE && pWindow->m_pWorkspace && pWindow->m_pWorkspace->isVisible()) {
+ pWindow->m_fMovingFromWorkspaceAlpha.setValueAndWarp(0.F);
+ pWindow->m_fMovingFromWorkspaceAlpha = 1.F;
+ }
}
PHLWINDOW CCompositor::getForceFocus() {