xserver/hw/xwayland
David Jacewicz e37eeb7af2 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>
2022-07-04 07:10:25 +00:00
..
desktop xwayland: set the app_id and install a desktop launcher 2022-06-30 17:53:01 +02:00
man xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
.gitignore
drm.xml
meson.build xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland-cursor.c xwayland: Fix cursor color 2022-02-11 10:33:10 +01:00
xwayland-cursor.h xwayland: Add xwl_cursor_clear_frame_cb() 2021-10-25 12:05:42 +00:00
xwayland-cvt.c xwayland: Use libxcvt 2021-08-06 11:29:29 +00:00
xwayland-cvt.h
xwayland-drm-lease.c xwayland: make the output serials belong to the screen 2022-06-30 16:33:30 +02:00
xwayland-drm-lease.h Xwayland: implement drm-lease-v1 2021-12-07 10:02:29 +00:00
xwayland-glamor-eglstream.c xwayland/glamor: Change errors to verbose messages 2021-12-01 15:13:11 +01:00
xwayland-glamor-gbm.c xwayland/glamor: Change errors to verbose messages 2021-12-01 15:13:11 +01:00
xwayland-glamor-xv.c
xwayland-glamor.c xwayland/eglstream: Prefer EGLstream if available 2021-12-02 08:13:49 +00:00
xwayland-glamor.h
xwayland-glx.c xwayland/glx: Flip order of sRGB & non-sRGB fbconfigs 2022-01-14 18:16:01 +01:00
xwayland-glx.h
xwayland-input.c xwayland: Aggregate scroll axis events to fix kinetic scrolling 2022-07-04 07:10:25 +00:00
xwayland-input.h xwayland: Aggregate scroll axis events to fix kinetic scrolling 2022-07-04 07:10:25 +00:00
xwayland-output.c xwayland: update the Xwayland screen size first 2022-06-30 17:53:01 +02:00
xwayland-output.h xwayland: add xwl_output_from_wl_output() 2022-06-30 17:53:01 +02:00
xwayland-pixmap.c
xwayland-pixmap.h
xwayland-present.c xwayland/present: Do not send two idle notify events for flip pixmaps 2022-06-21 09:42:35 +00:00
xwayland-present.h xwayland: Always hook up frame_callback_list in xwl_present_queue_vblank 2022-03-17 10:22:34 +01:00
xwayland-screen.c xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland-screen.h xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland-shm.c xwayland/shm: Avoid integer overflow on large pixmaps 2021-10-05 10:00:02 +00:00
xwayland-shm.h
xwayland-types.h Xwayland: implement drm-lease-v1 2021-12-07 10:02:29 +00:00
xwayland-vidmode.c xwayland: add a fixed geometry size for rootful 2022-06-30 17:52:22 +02:00
xwayland-vidmode.h
xwayland-window-buffers.c
xwayland-window-buffers.h
xwayland-window.c xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland-window.h xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland.c xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00
xwayland.pc.in xwayland: add optional support for libdecor 2022-06-30 17:53:01 +02:00