From: tokyo4j Date: Fri, 5 Apr 2024 09:01:06 +0000 (+0900) Subject: cursor: send release event to CSD client before finishing window dragging X-Git-Url: https://git.mdlowis.com/?a=commitdiff_plain;h=da9456881d746113ca79f782be1d78dc37bde10e;p=proto%2Flabwc.git cursor: send release event to CSD client before finishing window dragging This fixes that, when a CSD window is dragged into below waybar and the cursor button is released, the cursor focus is moved from the CSD window to waybar and a release event is sent to waybar, not original CSD window. --- diff --git a/src/input/cursor.c b/src/input/cursor.c index 11b71b82..8f4f759e 100644 --- a/src/input/cursor.c +++ b/src/input/cursor.c @@ -1033,14 +1033,15 @@ cursor_button_release(struct seat *seat, uint32_t button, } if (server->input_mode != LAB_INPUT_STATE_PASSTHROUGH) { - /* Exit interactive move/resize mode */ - interactive_finish(server->grabbed_view); - if (pressed_surface) { /* Ensure CSD clients see the release event */ wlr_seat_pointer_notify_button(seat->seat, time_msec, button, button_state); } + + /* Exit interactive move/resize mode */ + interactive_finish(server->grabbed_view); + return; }