xserver/hw
Scott Anderson 48300a7775 xwayland: use wayland axis_discrete event
This prevents multiple scroll events happening for wayland compositors
which send axis values other than 10. For example, libinput will
typically return 15 for each scroll wheel step, and if a wayland
compositor sends those to xwayland without normalising them, 2 scroll
wheel steps will end up as 3 xorg scroll events. By listening for the
discrete_axis event, this will now correctly send only 2 xorg scroll
events.

The wayland protocol gurantees that there will always be an axis event
following an axis_discrete event. However, it does not gurantee that
other events (including other axis_discrete+axis pairs) will not happen
in between them. So we must keep a list of outstanding axis_discrete
events.

Signed-off-by: Scott Anderson <scott@anderso.nz>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit cd285922cd)
2018-10-04 17:24:50 +02:00
..
dmx dmx: Silence a string truncation warning. 2018-04-05 14:18:44 -04:00
kdrive meson: Install man pages 2018-03-27 10:28:33 -04:00
vfb vfb: Fix man page in re depth 2018-04-24 14:44:06 -04:00
xfree86 modesetting: code refactor for PRIME sync 2018-10-04 17:24:42 +02:00
xnest meson: Install man pages 2018-03-27 10:28:33 -04:00
xquartz man: s/__/@/g 2018-03-27 10:13:17 -04:00
xwayland xwayland: use wayland axis_discrete event 2018-10-04 17:24:50 +02:00
xwin meson: install xwinclip and Xwinrc man pages 2018-06-19 09:52:17 -04:00
Makefile.am Xwayland DDX 2014-04-03 15:19:22 -07:00
meson.build meson: Move Xvfb build under an option. 2017-09-20 13:19:21 -04:00