xwayland: ignore pointer focus changes

This reflects what i3 does [1].

[1]: b3faf9fca9/src/handlers.c (L1076)

Fixes: c067fbc010 ("xwm: allow applications to change focus between their own surfaces")
Closes: https://github.com/swaywm/sway/issues/4926
(cherry picked from commit 68820d6c3d)
This commit is contained in:
Simon Ser 2020-02-19 10:55:26 +01:00
parent 27f9852e21
commit 4a634717a2
No known key found for this signature in database
GPG Key ID: 0FDE7BE0E88F5E48
1 changed files with 4 additions and 0 deletions

View File

@ -1231,6 +1231,10 @@ static void xwm_handle_focus_in(struct wlr_xwm *xwm,
ev->mode == XCB_NOTIFY_MODE_UNGRAB) { ev->mode == XCB_NOTIFY_MODE_UNGRAB) {
return; return;
} }
// Ignore pointer focus change events
if (ev->detail == XCB_NOTIFY_DETAIL_POINTER) {
return;
}
// Do not let X clients change the focus behind the compositor's // Do not let X clients change the focus behind the compositor's
// back. Reset the focus to the old one if it changed. // back. Reset the focus to the old one if it changed.