From 1c8f1e0b4c99bed97a7e05d1e10d930b0c96006b Mon Sep 17 00:00:00 2001 From: Frank Praznik Date: Sun, 31 Aug 2025 13:19:32 -0400 Subject: [PATCH] wayland: Update pointer warp protocol checks and error message --- src/video/wayland/SDL_waylandmouse.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/video/wayland/SDL_waylandmouse.c b/src/video/wayland/SDL_waylandmouse.c index f32124555a..1c74dd368b 100644 --- a/src/video/wayland/SDL_waylandmouse.c +++ b/src/video/wayland/SDL_waylandmouse.c @@ -889,14 +889,14 @@ static bool Wayland_WarpMouseRelative(SDL_Window *window, float x, float y) SDL_WindowData *wind = window->internal; SDL_WaylandSeat *seat; - if (d->pointer_constraints) { + if (d->wp_pointer_warp_v1 || d->pointer_constraints) { wl_list_for_each (seat, &d->seat_list, link) { if (wind == seat->pointer.focus) { Wayland_SeatWarpMouse(seat, wind, x, y); } } } else { - return SDL_SetError("wayland: mouse warp failed; compositor lacks support for the required zwp_pointer_confinement_v1 protocol"); + return SDL_SetError("wayland: mouse warp failed; compositor lacks support for the required wp_pointer_warp_v1 or zwp_pointer_confinement_v1 protocol"); } return true; @@ -908,7 +908,7 @@ static bool Wayland_WarpMouseGlobal(float x, float y) SDL_VideoData *d = vd->internal; SDL_WaylandSeat *seat; - if (d->pointer_constraints) { + if (d->wp_pointer_warp_v1 || d->pointer_constraints) { wl_list_for_each (seat, &d->seat_list, link) { SDL_WindowData *wind = seat->pointer.focus ? seat->pointer.focus : seat->keyboard.focus; @@ -929,7 +929,7 @@ static bool Wayland_WarpMouseGlobal(float x, float y) } } } else { - return SDL_SetError("wayland: mouse warp failed; compositor lacks support for the required zwp_pointer_confinement_v1 protocol"); + return SDL_SetError("wayland: mouse warp failed; compositor lacks support for the required wp_pointer_warp_v1 or zwp_pointer_confinement_v1 protocol"); } return true;