diff --git a/events.cpp b/events.cpp index 6856922e76..ae7ebb6100 100644 --- a/events.cpp +++ b/events.cpp @@ -882,8 +882,10 @@ void Client::enterNotifyEvent(XCrossingEvent* e) if (options->focusPolicy() == Options::ClickToFocus || workspace()->windowMenuShown()) return; + QPoint currentPos(e->x_root, e->y_root); if (options->isAutoRaise() && !isDesktop() && !isDock() && workspace()->focusChangeEnabled() && + currentPos != workspace()->focusMousePosition() && workspace()->topClientOnDesktop(workspace()->currentDesktop(), options->isSeparateScreenFocus() ? screen() : -1) != this) { delete autoRaiseTimer; @@ -893,7 +895,6 @@ void Client::enterNotifyEvent(XCrossingEvent* e) autoRaiseTimer->start(options->autoRaiseInterval()); } - QPoint currentPos(e->x_root, e->y_root); if (isDesktop() || isDock()) return; // for FocusFollowsMouse, change focus only if the mouse has actually been moved, not if the focus