diff options
| author | vaxerski <vaxry@vaxry.net> | 2022-10-25 14:19:24 +0100 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2022-10-25 14:19:24 +0100 |
| commit | ba9a8a9ded02b5af182b0dfcb46da1769060fbba (patch) | |
| tree | 99c3eb1fc09e9ac393a48aec515d2504791b5278 /src/managers | |
| parent | 34bd2cf803e790e6592707cbc5dfd0d3b42b86fe (diff) | |
unify LS unmap focus
Diffstat (limited to 'src/managers')
| -rw-r--r-- | src/managers/XWaylandManager.cpp | 6 | ||||
| -rw-r--r-- | src/managers/input/InputManager.cpp | 1 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/managers/XWaylandManager.cpp b/src/managers/XWaylandManager.cpp index e9980075..4a0b397d 100644 --- a/src/managers/XWaylandManager.cpp +++ b/src/managers/XWaylandManager.cpp @@ -62,8 +62,10 @@ void CHyprXWaylandManager::activateWindow(CWindow* pWindow, bool activate) { else wlr_xdg_toplevel_set_activated(pWindow->m_uSurface.xdg->toplevel, activate); - g_pCompositor->m_pLastFocus = getWindowSurface(pWindow); - g_pCompositor->m_pLastWindow = pWindow; + if (activate) { + g_pCompositor->m_pLastFocus = getWindowSurface(pWindow); + g_pCompositor->m_pLastWindow = pWindow; + } if (!pWindow->m_bPinned) g_pCompositor->getWorkspaceByID(pWindow->m_iWorkspaceID)->m_pLastFocusedWindow = pWindow; diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp index 64963041..d76810e3 100644 --- a/src/managers/input/InputManager.cpp +++ b/src/managers/input/InputManager.cpp @@ -311,7 +311,6 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) { } else { if (pFoundLayerSurface && pFoundLayerSurface->layerSurface->current.keyboard_interactive && *PFOLLOWMOUSE != 3 && allowKeyboardRefocus) { g_pCompositor->focusSurface(foundSurface); - g_pCompositor->m_pLastWindow = nullptr; // reset last window as we have a full focus on a LS } if (pFoundLayerSurface) |
