xserver-multidpi/Xi
Peter Hutterer 3304bbff9b Input: Add smooth-scrolling support to GetPointerEvents
For scroll wheel support, we used to send buttons 4/5 and 6/7 for
horizontal/vertical positive/negative scroll events.  For touchpads, we
really want more fine-grained scroll values.  GetPointerEvents now
accepts both old-school scroll button presses, and new-style scroll axis
events, while emitting both types of events to support both old and new
clients.

This works with the new XIScrollClass to mark axes as scrolling axes.
Drivers mark any valuators that send scroll events with SetScrollValuator.
(Currently missing: the XIDeviceChangeEvent being sent when a driver changes
a scroll axis at run-time. This can be added later.)

Note: the SCROLL_TYPE enums are intentionally different values to the XI2
proto values to avoid copy/overlapping range bugs.

Co-authored-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2011-09-30 09:24:18 +10:00
..
allowev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
allowev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgdctl.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgdctl.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgfctl.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
chgkbd.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgkbd.h Xi: disallow changing core keyboard and pointer 2006-10-29 03:43:34 +03:00
chgkmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgkmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgprop.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgprop.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgptr.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
chgptr.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
closedev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
closedev.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
devbell.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
devbell.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
exevents.c Input: Add smooth-scrolling support to GetPointerEvents 2011-09-30 09:24:18 +10:00
exglobals.h xi: Use RESTYPE consistently 2011-03-08 13:20:33 -05:00
extinit.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getbmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getbmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getdctl.c Use correct swap{l,s} (or none at all for CARD8) 2011-09-21 17:14:16 -04:00
getdctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfctl.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfocus.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getfocus.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getkmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getkmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getmmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getmmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getprop.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getprop.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getselev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getselev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getvers.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
getvers.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabdev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
grabdev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabdevb.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
grabdevb.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabdevk.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
grabdevk.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
gtmotion.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
gtmotion.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
listdev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
listdev.h Xi: Change ChangeMasterDeviceClasses to new XI2 events. 2009-03-20 15:17:55 +10:00
Makefile.am Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
opendev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
opendev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
queryst.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
queryst.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
selectev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
selectev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
sendexev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
sendexev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setbmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
setbmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setdval.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
setdval.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setfocus.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
setfocus.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setmmap.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
setmmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setmode.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
setmode.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
stubs.c simplify ChangeDeviceControl in stubs 2011-03-24 09:52:48 +10:00
ungrdev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
ungrdev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
ungrdevb.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
ungrdevb.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
ungrdevk.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
ungrdevk.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
xiallowev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xiallowev.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xichangecursor.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xichangecursor.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xichangehierarchy.c Use correct swap{l,s} (or none at all for CARD8) 2011-09-21 17:14:16 -04:00
xichangehierarchy.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xigetclientpointer.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xigetclientpointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xigrabdev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xigrabdev.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xipassivegrab.c Merge remote-tracking branch 'whot/next' 2011-09-26 20:24:15 -07:00
xipassivegrab.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xiproperty.c Input: Add vertical and horizontal scroll axes 2011-09-29 12:26:43 +10:00
xiproperty.h Xi: reset the known properties at the end of the server generation. 2010-05-07 12:16:43 -07:00
xiquerydevice.c Input: Add smooth-scrolling support to GetPointerEvents 2011-09-30 09:24:18 +10:00
xiquerydevice.h Input: Add smooth-scrolling support to GetPointerEvents 2011-09-30 09:24:18 +10:00
xiquerypointer.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xiquerypointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiqueryversion.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xiqueryversion.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiselectev.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xiselectev.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xisetclientpointer.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xisetclientpointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xisetdevfocus.c Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
xisetdevfocus.h Xi: standardise XI2 headers. 2009-09-03 08:39:27 +10:00
xiwarppointer.c Input: Convert DeviceIntRec::last to use doubles 2011-09-29 12:26:34 +10:00
xiwarppointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00