diff options
author | Nick Diego Yamane <nickdiego@igalia.com> | 2020-04-16 00:32:18 -0400 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-05-01 10:56:14 +0200 |
commit | 091f580b7cb0df92f0f6e0be34b52f8abfdbe97a (patch) | |
tree | a15948a2ef8fa11ba90dc0b7b6b577dfd67a8dd9 | |
parent | 7251df94c15899d1260d6677b2b51f5e6571b203 (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.c | 1 |
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); } } |