set last monitor and dont refocus in some cases (changeworkspace)

This commit is contained in:
vaxerski 2022-09-05 21:36:22 +02:00
parent 2ba7cb2414
commit 94ca386a8c
1 changed files with 4 additions and 1 deletions

View File

@ -658,9 +658,12 @@ void CKeybindManager::changeworkspace(std::string args) {
if (g_pCompositor->cursorOnReservedArea()) // fix focus on bars etc
g_pInputManager->refocus();
} else
} else if (g_pCompositor->getWindowsOnWorkspace(PWORKSPACETOCHANGETO->m_iID) > 0)
g_pInputManager->refocus();
// set the new monitor as the last (no warps would bug otherwise)
g_pCompositor->m_pLastMonitor = g_pCompositor->getMonitorFromID(PWORKSPACETOCHANGETO->m_iMonitorID);
// mark the monitor dirty
g_pHyprRenderer->damageMonitor(PMONITOR);