mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-08-15 20:13:49 -07:00
keybinds: remember last workspace on focusmonitor
This commit is contained in:
@@ -1394,7 +1394,18 @@ void CKeybindManager::focusMonitor(std::string arg) {
|
|||||||
if (!PMONITOR || PMONITOR == g_pCompositor->m_pLastMonitor)
|
if (!PMONITOR || PMONITOR == g_pCompositor->m_pLastMonitor)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
const auto PWORKSPACE = g_pCompositor->getWorkspaceByID(g_pCompositor->m_pLastMonitor->activeWorkspace);
|
||||||
|
|
||||||
changeworkspace("[internal]" + std::to_string(PMONITOR->activeWorkspace));
|
changeworkspace("[internal]" + std::to_string(PMONITOR->activeWorkspace));
|
||||||
|
|
||||||
|
// remember last workspace (internal calls don't preserve it)
|
||||||
|
|
||||||
|
const auto PNEWWORKSPACE = g_pCompositor->getWorkspaceByID(PMONITOR->activeWorkspace);
|
||||||
|
if (PNEWWORKSPACE == PWORKSPACE)
|
||||||
|
return;
|
||||||
|
|
||||||
|
PNEWWORKSPACE->m_sPrevWorkspace.iID = PWORKSPACE->m_iID;
|
||||||
|
PNEWWORKSPACE->m_sPrevWorkspace.name = PWORKSPACE->m_szName;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CKeybindManager::moveCursorToCorner(std::string arg) {
|
void CKeybindManager::moveCursorToCorner(std::string arg) {
|
||||||
|
Reference in New Issue
Block a user