mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-26 13:25:59 +01:00
fix: inconsistent behaviour where last workspace was not saved (#3261)
This commit is contained in:
parent
df51c45d7f
commit
bc41d7ec85
2 changed files with 2 additions and 0 deletions
|
@ -877,6 +877,7 @@ void CCompositor::focusWindow(CWindow* pWindow, wlr_surface* pSurface) {
|
||||||
// This is to fix incorrect feedback on the focus history.
|
// This is to fix incorrect feedback on the focus history.
|
||||||
const auto PWORKSPACE = getWorkspaceByID(pWindow->m_iWorkspaceID);
|
const auto PWORKSPACE = getWorkspaceByID(pWindow->m_iWorkspaceID);
|
||||||
PWORKSPACE->m_pLastFocusedWindow = pWindow;
|
PWORKSPACE->m_pLastFocusedWindow = pWindow;
|
||||||
|
PWORKSPACE->rememberPrevWorkspace(getWorkspaceByID(m_pLastMonitor->activeWorkspace));
|
||||||
const auto PMONITOR = getMonitorFromID(PWORKSPACE->m_iMonitorID);
|
const auto PMONITOR = getMonitorFromID(PWORKSPACE->m_iMonitorID);
|
||||||
PMONITOR->changeWorkspace(PWORKSPACE, false, true);
|
PMONITOR->changeWorkspace(PWORKSPACE, false, true);
|
||||||
// changeworkspace already calls focusWindow
|
// changeworkspace already calls focusWindow
|
||||||
|
|
|
@ -165,6 +165,7 @@ void CInputManager::onSwipeEnd(wlr_pointer_swipe_end_event* e) {
|
||||||
|
|
||||||
pSwitchedTo = PWORKSPACER;
|
pSwitchedTo = PWORKSPACER;
|
||||||
}
|
}
|
||||||
|
m_sActiveSwipe.pWorkspaceBegin->rememberPrevWorkspace(pSwitchedTo);
|
||||||
|
|
||||||
g_pHyprRenderer->damageMonitor(m_sActiveSwipe.pMonitor);
|
g_pHyprRenderer->damageMonitor(m_sActiveSwipe.pMonitor);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue