From 83cd5e2ebd07e5e6923a514c93931a31a2e7fd5d Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sat, 6 May 2023 16:10:51 +0100 Subject: [PATCH] workspaces: minor fixes for multi-special --- src/Compositor.cpp | 2 +- src/helpers/Monitor.cpp | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Compositor.cpp b/src/Compositor.cpp index b78d3e9b..8d2fbb7b 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -1064,7 +1064,7 @@ bool CCompositor::isWorkspaceVisible(const int& w) { if (m->activeWorkspace == w) return true; - if (m->specialWorkspaceID && isWorkspaceSpecial(w)) + if (m->specialWorkspaceID == w) return true; } diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index f217f782..1102517d 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -579,6 +579,11 @@ void CMonitor::setSpecialWorkspace(CWorkspace* const pWorkspace) { return; } + if (specialWorkspaceID) { + if (const auto EXISTINGSPECIAL = g_pCompositor->getWorkspaceByID(specialWorkspaceID); EXISTINGSPECIAL) + EXISTINGSPECIAL->startAnim(false, false); + } + // open special pWorkspace->m_iMonitorID = ID; specialWorkspaceID = pWorkspace->m_iID;