xserver/Xi
Peter Hutterer e92dcb6ce0 input: unify button numbers on master devices.
Master devices provide the union of all attached slave devices' buttons,
i.e. the number of buttons on the master device is always the number of
buttons of the slave device with the highest number of buttons. When slaves
are attached or detached, the master device adjusts the button number to
reflect the new buttons.

On a slave switch, this slave's button labels are copied into the master (up
to slave->num_buttons). The remaining button labels (if any) stay as they
are. Thus, if any of the higher buttons is still pressed, it reflects the
label of the last pressed device that provided this button.

If two devices press the same button and it is differently labelled the last
pressed one will be reflected in the master device.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-18 15:50:47 +10:00
..
Makefile.am Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
allowev.c dix: remove un-used parameter "core" from AllowSome 2009-04-19 22:28:11 +10:00
allowev.h
chgdctl.c input: reduce the number of superfluous hierarchy events 2009-05-16 12:20:58 +10:00
chgdctl.h
chgfctl.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
chgfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
chgkbd.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
chgkbd.h Xi: disallow changing core keyboard and pointer 2006-10-29 03:43:34 +03:00
chgkmap.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
chgkmap.h
chgprop.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
chgprop.h
chgptr.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
chgptr.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
closedev.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
closedev.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
devbell.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
devbell.h
exevents.c input: unify button numbers on master devices. 2009-06-18 15:50:47 +10:00
exglobals.h Xi: purge old device enter/leave masks. 2009-03-20 15:17:57 +10:00
extinit.c Xi: valuator/button labels are called labels now, not 'names' 2009-06-18 14:41:49 +10:00
getbmap.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getbmap.h
getdctl.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getdctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfctl.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfocus.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getfocus.h
getkmap.c Input: Remove core keysyms from KeyClassRec 2009-01-22 15:08:59 +11:00
getkmap.h
getmmap.c Input: Remove modifierKeyMap 2009-01-22 15:08:55 +11:00
getmmap.h
getprop.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getprop.h
getselev.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
getselev.h
getvers.c Xi: remove the GetExtensionVersion hack. 2009-04-19 22:24:13 +10:00
getvers.h
grabdev.c Xi: fix wrong grabtype from ProcXGrabDevice. 2009-06-03 12:17:54 +10:00
grabdev.h
grabdevb.c input: Add grabtype to GrabParameters. 2009-06-01 13:48:43 +10:00
grabdevb.h
grabdevk.c input: Add grabtype to GrabParameters. 2009-06-01 13:48:43 +10:00
grabdevk.h
gtmotion.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
gtmotion.h
listdev.c Input: rename DeviceIntRec->isMaster to ->type. 2009-05-22 15:44:50 +10:00
listdev.h Xi: Change ChangeMasterDeviceClasses to new XI2 events. 2009-03-20 15:17:55 +10:00
opendev.c Input: rename DeviceIntRec->isMaster to ->type. 2009-05-22 15:44:50 +10:00
opendev.h
queryst.c input: change axisVal from uint to double. 2009-06-18 14:40:53 +10:00
queryst.h
selectev.c input: update to inputproto 1.9.99.8 XI2 defines. 2009-05-08 14:33:44 +10:00
selectev.h
sendexev.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
sendexev.h
setbmap.c Xi: remove un-used IsOn macro. 2009-06-14 18:47:21 +10:00
setbmap.h
setdval.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
setdval.h
setfocus.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
setfocus.h
setmmap.c dix: Force deviced ids of 2 and higher for actual devices. 2009-03-20 15:17:54 +10:00
setmmap.h
setmode.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
setmode.h
stubs.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
ungrdev.c input: replace GrabRec's coreGrab field with grabtype. 2009-04-19 22:28:08 +10:00
ungrdev.h
ungrdevb.c input: ensure various ProcUngrabKey/Buttons have the right grabtype set. 2009-05-04 17:40:29 +10:00
ungrdevb.h
ungrdevk.c input: ensure various ProcUngrabKey/Buttons have the right grabtype set. 2009-05-04 17:40:29 +10:00
ungrdevk.h
xiallowev.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xiallowev.h Xi: add support for XIAllowEvents. 2009-04-19 22:28:11 +10:00
xichangecursor.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xichangecursor.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xichangehierarchy.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xichangehierarchy.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xigetclientpointer.c Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xigetclientpointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xigrabdev.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xigrabdev.h Xi: Add support for XI2 active grabs and ungrabs. 2009-04-19 22:28:11 +10:00
xipassivegrab.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xipassivegrab.h Xi: add GrabButton and GrabKeysym code. 2009-05-06 14:37:33 +10:00
xiproperty.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xiproperty.h Xi: Add XI2 property requests. 2009-05-08 14:33:23 +10:00
xiquerydevice.c Xi: valuator/button labels are called labels now, not 'names' 2009-06-18 14:41:49 +10:00
xiquerydevice.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiquerypointer.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xiquerypointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiqueryversion.c Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiqueryversion.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xiselectev.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xiselectev.h Xi: rename ProcXISelectEvent to ProcXISelectEvents. 2009-06-11 13:42:49 +10:00
xisetclientpointer.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xisetclientpointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00
xisetdevfocus.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xisetdevfocus.h Update to new XI2 names 2009-05-16 12:20:58 +10:00
xiwarppointer.c input: bump to ints for deviceids - XI2 requires 16-bit deviceids. 2009-06-18 14:40:54 +10:00
xiwarppointer.h Xi: namespace XI2 files. 2009-06-17 09:05:22 +10:00