From 8d50d320e237106083fb820002f7a680ff7e5a66 Mon Sep 17 00:00:00 2001 From: Norman Feske <norman.feske@genode-labs.com> Date: Mon, 4 Nov 2024 16:42:13 +0100 Subject: [PATCH] nitpicker: drop superfluous abs motion events This patch fixes focus-follows-mouse problem reported for Sculpt 24.10 when using no (operational) backdrop. In the absence of a background, nitpicker wrongly delivered absolute motion events to the most recently hovered client even after leaving the client's area to a area occupied by no client. These motion events, in turn, confused the internal consistency of the window managers enter/leave tracking. Fixes #5375 --- repos/os/src/server/nitpicker/user_state.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/repos/os/src/server/nitpicker/user_state.cc b/repos/os/src/server/nitpicker/user_state.cc index c1a7617c0c..6a7360e7fd 100644 --- a/repos/os/src/server/nitpicker/user_state.cc +++ b/repos/os/src/server/nitpicker/user_state.cc @@ -257,6 +257,8 @@ void User_state::_handle_input_event(Input::Event ev) View_owner *receiver = _input_receiver; if (_key_cnt == 0 && _hovered) { + if (ev.absolute_motion()) + receiver = nullptr; /* * Unless the domain of the pointed session is configured to * always receive hover events, we deliver motion events only