wayland: fix modifier+drag grab — pass owner_events=1 in frameMouseDown

The pointer_grab call for Alt+drag (move/resize via MOD_MASK on client
surface) was passing owner_events=0.  wl_pointer_grab only sets
grab_type=3 and clears seat pointer focus when owner_events is True;
with 0 the grab returned success but left no grab state, so motion
events continued flowing to the client instead of the WM drag loop.

Pass 1 (True) to match the calls in resizebarMouseDown and
titlebarMouseDown, which work correctly.
This commit is contained in:
lkn 2026-06-06 20:41:42 +02:00
parent 10281cf2d1
commit 16e07f751c
1 changed files with 1 additions and 1 deletions

View File

@ -2711,7 +2711,7 @@ static void frameMouseDown(WObjDescriptor *desc, WBackendEvent *event)
/* move the window */
if (!wm_backend->pointer_grab(wwin->client_win, WNATIVE_NONE,
WM_EVMASK_BUTTON_MOTION | WM_EVMASK_BUTTON_RELEASE | WM_EVMASK_BUTTON_PRESS,
WCUR_NONE, 0, 0)) {
WCUR_NONE, 1, 0)) {
return;
}
if (event->u.button.button == Button3) {