From f0b2eeaf2fe406cc0b788bb3e4ff8c7a7653613d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 17 Aug 2022 18:24:38 +0200 Subject: [PATCH] xwayland: Add break statements in pointer_handle_axis Fixes accidentally taking the WL_POINTER_AXIS_HORIZONTAL_SCROLL case as well after the WL_POINTER_AXIS_VERTICAL_SCROLL case, which resulted in vertical wheel events triggering both vertical and horizontal scrolling. Fixes: e37eeb7af2a8 ("xwayland: Aggregate scroll axis events to fix kinetic scrolling") Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1367 --- hw/xwayland/xwayland-input.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/xwayland/xwayland-input.c b/hw/xwayland/xwayland-input.c index 16b58a2d5..240eb0139 100644 --- a/hw/xwayland/xwayland-input.c +++ b/hw/xwayland/xwayland-input.c @@ -782,9 +782,11 @@ pointer_handle_axis(void *data, struct wl_pointer *pointer, case WL_POINTER_AXIS_VERTICAL_SCROLL: xwl_seat->pending_pointer_event.has_vertical_scroll = TRUE; xwl_seat->pending_pointer_event.scroll_dy = value; + break; case WL_POINTER_AXIS_HORIZONTAL_SCROLL: xwl_seat->pending_pointer_event.has_horizontal_scroll = TRUE; xwl_seat->pending_pointer_event.scroll_dx = value; + break; } }