xwayland: Aggregate scroll axis events to fix kinetic scrolling
Pointer scroll events are collected in xwl_seat->pending_pointer_event as they are received in the pointer_handle_axis and pointer_handle_axis_discrete callbacks. They are dispatched together as a single event when pointer_handle_frame is called which "Indicates the end of a set of events that logically belong together" [1]. This patch also sends an event with dx=0, dy=0 when pointer_handle_axis_stop is called, which is what allows XWayland clients to recognise the end of a touchpad scroll. [1] https://wayland.app/protocols/wayland#wl_pointer:event:frame Signed-off-by:David Jacewicz <david.jacewicz27@protonmail.com> Fixes: xorg/xserver#926 Reviewed-by:
Peter Hutterer <peter.hutterer@who-t.net>
Loading
Please register or sign in to comment