Skip to content

Commit

Permalink
input: Dont set active monitor when simulating mouse movement (hyprwm…
Browse files Browse the repository at this point in the history
…#5465)

* fix mouse simulation switching focusedmon

* fix some warnings with wrong enum
  • Loading branch information
thejch authored and lisuke committed Apr 15, 2024
1 parent ce632d0 commit 8b8d553
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/managers/input/InputManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ void CInputManager::mouseMoveUnified(uint32_t time, bool refocus) {

g_pLayoutManager->getCurrentLayout()->onMouseMove(getMouseCoordsInternal());

if (PMONITOR && PMONITOR != g_pCompositor->m_pLastMonitor && (*PMOUSEFOCUSMON || refocus))
if (PMONITOR && PMONITOR != g_pCompositor->m_pLastMonitor && (*PMOUSEFOCUSMON || refocus) && !m_pForcedFocus)
g_pCompositor->setActiveMonitor(PMONITOR);

if (g_pSessionLockManager->isSessionLocked()) {
Expand Down Expand Up @@ -624,7 +624,7 @@ void CInputManager::processMouseDownNormal(wlr_pointer_button_event* e) {
}

switch (e->state) {
case WLR_BUTTON_PRESSED:
case WL_POINTER_BUTTON_STATE_PRESSED:
if (*PFOLLOWMOUSE == 3) // don't refocus on full loose
break;

Expand All @@ -646,7 +646,7 @@ void CInputManager::processMouseDownNormal(wlr_pointer_button_event* e) {
g_pCompositor->changeWindowZOrder(g_pCompositor->m_pLastWindow, true);

break;
case WLR_BUTTON_RELEASED: break;
case WL_POINTER_BUTTON_STATE_RELEASED: break;
}

// notify app if we didnt handle it
Expand All @@ -659,7 +659,7 @@ void CInputManager::processMouseDownNormal(wlr_pointer_button_event* e) {

void CInputManager::processMouseDownKill(wlr_pointer_button_event* e) {
switch (e->state) {
case WLR_BUTTON_PRESSED: {
case WL_POINTER_BUTTON_STATE_PRESSED: {
const auto PWINDOW = g_pCompositor->vectorToWindowUnified(getMouseCoordsInternal(), RESERVED_EXTENTS | INPUT_EXTENTS | ALLOW_FLOATING);

if (!PWINDOW) {
Expand All @@ -671,7 +671,7 @@ void CInputManager::processMouseDownKill(wlr_pointer_button_event* e) {
kill(PWINDOW->getPID(), SIGKILL);
break;
}
case WLR_BUTTON_RELEASED: break;
case WL_POINTER_BUTTON_STATE_RELEASED: break;
default: break;
}

Expand Down

0 comments on commit 8b8d553

Please sign in to comment.