summaryrefslogtreecommitdiff
path: root/src/managers/input/InputManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/managers/input/InputManager.cpp')
-rw-r--r--src/managers/input/InputManager.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/managers/input/InputManager.cpp b/src/managers/input/InputManager.cpp
index 9dd6e5da..ce61a665 100644
--- a/src/managers/input/InputManager.cpp
+++ b/src/managers/input/InputManager.cpp
@@ -98,10 +98,15 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) {
if (*PZOOMFACTOR != 1.f)
g_pHyprRenderer->damageMonitor(PMONITOR);
- if (m_pForcedFocus) {
- pFoundWindow = m_pForcedFocus;
+ CWindow* forcedFocus = m_pForcedFocus;
+
+ if (!forcedFocus)
+ forcedFocus = g_pCompositor->getForceFocus();
+
+ if (forcedFocus) {
+ pFoundWindow = forcedFocus;
surfacePos = pFoundWindow->m_vRealPosition.vec();
- foundSurface = m_pForcedFocus->m_pWLSurface.wlr();
+ foundSurface = pFoundWindow->m_pWLSurface.wlr();
}
// constraints