diff options
author | David Jacewicz <david.jacewicz27@protonmail.com> | 2022-06-17 15:13:13 -0400 |
---|---|---|
committer | Olivier Fourdan <fourdan@gmail.com> | 2022-07-04 07:10:25 +0000 |
commit | e37eeb7af2a84d32f0a74feb00613efda6bc966e (patch) | |
tree | d7b845dfbf4783e5cd998eccbcf2a883b0ab7f55 /xkb | |
parent | 4cfdc5af31ae8282903d0f65cff858330b9f9d1a (diff) |
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: https://gitlab.freedesktop.org/xorg/xserver/-/issues/926
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'xkb')
0 files changed, 0 insertions, 0 deletions