summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2022-08-19 17:25:07 +0200
committervaxerski <vaxry@vaxry.net>2022-08-19 17:25:07 +0200
commitf9e30e985c03ee6cb0641cdd032f003e02976b96 (patch)
treebfd96b73ca590727e61c0ba50b616d99ef4a4639 /src
parent6cae44e2c0254e959ad05e4f2d98576cb6b82258 (diff)
fix refocus on no window
Diffstat (limited to 'src')
-rw-r--r--src/managers/input/InputManager.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp
index f8899f62..9a0d5226 100644
--- a/src/managers/input/InputManager.cpp
+++ b/src/managers/input/InputManager.cpp
@@ -182,9 +182,14 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) {
if (!(pFoundWindow && pFoundWindow->m_bIsFloating && pFoundWindow->m_bCreatedOverFullscreen))
pFoundWindow = g_pCompositor->getFullscreenWindowOnWorkspace(PWORKSPACE->m_iID);
}
- } else
+ } else {
pFoundWindow = g_pCompositor->vectorToWindowIdeal(mouseCoords);
+ if (refocus && !pFoundWindow) {
+ pFoundWindow = g_pCompositor->getFirstWindowOnWorkspace(PMONITOR->activeWorkspace);
+ }
+ }
+
if (pFoundWindow) {
if (!pFoundWindow->m_bIsX11) {
foundSurface = g_pCompositor->vectorWindowToSurface(mouseCoords, pFoundWindow, surfaceCoords);