Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I have
pointer_follows_focus
set. Normally when I focus a window by moving the pointer to it, the pointer doesn't warp, which is good: I only want it to warp when something else caused the focus to change. However, if the pointer crossed from one monitor to another, it would warp to the middle of the newly focussed window, which was annoying.With some debugging I figured out
focus_in
was being triggered withe->event == root
, causingfocus_in
to focus the focussed node a second time. I don't know enough about X to understand why this event was generated; perhaps a real fix would address that as the root issue (no pun intended).Instead, this fix simply unsets
pointer_follows_focus
in this case. I briefly tested the repro instructions at #1378 (comment) to confirm the original bug behind the code I modified did not come back.