From 84ec8f92a69feb303e0e521f482b75b2cd12c4aa Mon Sep 17 00:00:00 2001 From: Thomas Hebb Date: Wed, 20 May 2020 21:20:19 -0400 Subject: Use new wlroots API for clearing keyboard/pointer focus during grabs We are not allowed to do what we did in #5222 and pass a `NULL` surface wlr_seat_pointer_notify_enter(), and it's causing crashes when an xdg-shell popup is active (see #5294 and swaywm/wlroots#2161). Instead, solve #5220 using the new wlroots API introduced in swaywm/wlroots#2217. --- sway/input/seatop_default.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'sway/input/seatop_default.c') diff --git a/sway/input/seatop_default.c b/sway/input/seatop_default.c index 072f4396..2bce2f77 100644 --- a/sway/input/seatop_default.c +++ b/sway/input/seatop_default.c @@ -483,8 +483,7 @@ static void handle_pointer_motion(struct sway_seat *seat, uint32_t time_msec, } } else { cursor_update_image(cursor, node); - wlr_seat_pointer_notify_enter(seat->wlr_seat, NULL, 0, 0); - wlr_seat_pointer_clear_focus(seat->wlr_seat); + wlr_seat_pointer_notify_clear_focus(seat->wlr_seat); } struct sway_drag_icon *drag_icon; @@ -664,8 +663,7 @@ static void handle_rebase(struct sway_seat *seat, uint32_t time_msec) { } } else { cursor_update_image(cursor, e->previous_node); - wlr_seat_pointer_notify_enter(seat->wlr_seat, NULL, 0, 0); - wlr_seat_pointer_clear_focus(seat->wlr_seat); + wlr_seat_pointer_notify_clear_focus(seat->wlr_seat); } } -- cgit v1.2.3