From 15135465d9a9c1e2cb22216e2f99986607b2e04f Mon Sep 17 00:00:00 2001 From: Jens Peters Date: Tue, 28 May 2024 20:35:26 +0200 Subject: [PATCH] input: send tablet proximity-in only above a valid surface A resize with a tablet tool might end above a non-tablet capable surface, discard the proximity-in in that case. --- src/input/tablet.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/input/tablet.c b/src/input/tablet.c index a307abe6..79018ec1 100644 --- a/src/input/tablet.c +++ b/src/input/tablet.c @@ -403,10 +403,11 @@ handle_tip(struct wl_listener *listener, void *data) } bool exit_interactive = cursor_finish_button_release(tool->seat); - if (exit_interactive && tool->tool_v2->focused_surface) { + if (exit_interactive && surface && tool->tool_v2->focused_surface) { /* * Re-enter the surface after a resize/move to ensure - * being back in tablet mode. + * being back in tablet mode, but only if we are still + * above a tablet capable surface. */ wlr_tablet_v2_tablet_tool_notify_proximity_out(tool->tool_v2); wlr_tablet_v2_tablet_tool_notify_proximity_in(tool->tool_v2,