aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2020-02-19 10:55:26 +0100
committerBrian Ashworth <bosrsf04@gmail.com>2020-02-19 12:56:05 -0500
commit68820d6c3d05922a58897078bcb13f8041471772 (patch)
treed60030e5e5dd205fffbde28d9d7077de31cb8950
parentf416efa918702156fbc617bf32ca943c909e18ee (diff)
xwayland: ignore pointer focus changes
This reflects what i3 does [1]. [1]: https://github.com/i3/i3/blob/b3faf9fca9254679a4715486a4de80ebaee70410/src/handlers.c#L1076 Fixes: c067fbc010da ("xwm: allow applications to change focus between their own surfaces") Closes: https://github.com/swaywm/sway/issues/4926
-rw-r--r--xwayland/xwm.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/xwayland/xwm.c b/xwayland/xwm.c
index 95f8ed94..1658e25d 100644
--- a/xwayland/xwm.c
+++ b/xwayland/xwm.c
@@ -1231,6 +1231,10 @@ static void xwm_handle_focus_in(struct wlr_xwm *xwm,
ev->mode == XCB_NOTIFY_MODE_UNGRAB) {
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
// back. Reset the focus to the old one if it changed.