aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Diego Yamane <nickdiego@igalia.com>2020-04-16 00:32:18 -0400
committerSimon Ser <contact@emersion.fr>2020-05-01 10:56:14 +0200
commit091f580b7cb0df92f0f6e0be34b52f8abfdbe97a (patch)
treea15948a2ef8fa11ba90dc0b7b6b577dfd67a8dd9
parent7251df94c15899d1260d6677b2b51f5e6571b203 (diff)
input/seatop_default: properly notify pointer leave
Currently, clients receive wl_data_device::leave events only when the pointer enters another surface, which leads to issues, such as #5220. This happens because wlr_seat_pointer_notify_enter() is called when handling motion events only for non-NULL surfaces. Fixes #5220
-rw-r--r--sway/input/seatop_default.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sway/input/seatop_default.c b/sway/input/seatop_default.c
index d20048d5..8513e314 100644
--- a/sway/input/seatop_default.c
+++ b/sway/input/seatop_default.c
@@ -219,6 +219,7 @@ static void cursor_do_rebase(struct sway_cursor *cursor, uint32_t time_msec,
}
if (surface == NULL) {
+ wlr_seat_pointer_notify_enter(wlr_seat, NULL, 0, 0);
wlr_seat_pointer_clear_focus(wlr_seat);
}
}