summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Compositor.cpp')
-rw-r--r--src/Compositor.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index bb80f3ef..1f7f6182 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -2042,6 +2042,9 @@ void CCompositor::swapActiveWorkspaces(CMonitor* pMonitorA, CMonitor* pMonitorB)
pMonitorA->activeWorkspace = PWORKSPACEB->m_iID;
pMonitorB->activeWorkspace = PWORKSPACEA->m_iID;
+ PWORKSPACEA->rememberPrevWorkspace(PWORKSPACEB);
+ PWORKSPACEB->rememberPrevWorkspace(PWORKSPACEA);
+
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(pMonitorA->ID);
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(pMonitorB->ID);
@@ -2150,7 +2153,7 @@ void CCompositor::moveWorkspaceToMonitor(CWorkspace* pWorkspace, CMonitor* pMoni
// fix old mon
int nextWorkspaceOnMonitorID = -1;
- if (!SWITCHINGISACTIVE || !POLDMON)
+ if (!SWITCHINGISACTIVE)
nextWorkspaceOnMonitorID = pWorkspace->m_iID;
else {
for (auto& w : m_vWorkspaces) {