xserver-multidpi/Xi
Peter Hutterer 32aa252e98 dix: Process an input event as a single event, instead of two separate ones.
This is a significant shift in how input events are perceived. The common
approach was to treat a core event as a different entity than the XI event.
This could result in the XI event being delivered to a different client than
the core event. This doesn't work nicely if they come from the same device.

Instead, we treat an input event as a single event, that is delivered through
two separate APIs. So when delivering an event, we first try the XI event,
then the core event. If the window want's neither, we go to the parent and
repeat. Once either core or XI has been delivered, the processing stops.

Important: Different to the previous method, if a client registers for core
button events, the parent window will not get XI events. This should only
cause problems when you're mixing core and XI events, so don't do that!

Generic events don't fit into this yet, they cause me headaches.
2008-01-15 18:41:51 +10:30
..
allowev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
allowev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chaccess.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
chaccess.h Xi: Add access control request handling. 2007-02-22 20:00:59 +10:30
chdevcur.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
chdevcur.h Xi: Adding ChangeDeviceCursor request 2007-01-08 12:31:18 +10:30
chdevhier.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
chdevhier.h Xi: remove ChangePointerKeyboardPairing in favour of ChangeDeviceHierarchy. 2007-10-19 14:36:37 +09:30
chgdctl.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
chgdctl.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgfctl.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
chgfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
chgkbd.c Input: Return errors to the dispatcher instead of sending them ourself. 2007-09-26 07:26:59 -04:00
chgkbd.h Xi: disallow changing core keyboard and pointer 2006-10-29 03:43:34 +03:00
chgkmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
chgkmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgprop.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
chgprop.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
chgptr.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
chgptr.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
chpkpair.h Send PointerKeyboardPairingChangedNotifyEvent using XGE. 2007-05-01 12:12:58 +09:30
closedev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
closedev.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
devbell.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
devbell.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
exevents.c dix: Process an input event as a single event, instead of two separate ones. 2008-01-15 18:41:51 +10:30
exglobals.h Clean up, correct some comments. 2007-05-17 17:59:02 +09:30
extgrbdev.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
extgrbdev.h Add ExtendedGrabDevice handling. 2007-05-14 10:42:03 +09:30
extinit.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
fakedevdata.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
fakedevdata.h Add handling for FakeDeviceEvent request. 2007-05-02 17:49:20 +09:30
getbmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getbmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getcptr.c Xi: remove trailing whitespaces. 2007-11-13 17:14:35 +10:30
getcptr.h Xi: add GetClientPointer and GetPointerPairing requests. 2007-03-22 17:47:01 +10:30
getdctl.c Xi: specify correct struct when calculating size of GetDeviceControl reply. 2007-12-19 18:18:10 +10:30
getdctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfctl.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getfctl.h Static cleanup on Xi/ 2007-03-25 21:18:39 -04:00
getfocus.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getfocus.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getkmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getkmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getmmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getmmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getpairp.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
getpairp.h Xi: add GetClientPointer and GetPointerPairing requests. 2007-03-22 17:47:01 +10:30
getprop.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getprop.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getselev.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getselev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
getvers.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
getvers.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabacc.c Xi: remove trailing whitespaces. 2007-11-13 17:14:35 +10:30
grabacc.h Xi: Add access control request handling. 2007-02-22 20:00:59 +10:30
grabdev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
grabdev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabdevb.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
grabdevb.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
grabdevk.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
grabdevk.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
gtmotion.c Merge branch 'master' into XACE-SELINUX 2007-11-05 19:08:36 -05:00
gtmotion.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
listdev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
listdev.h dix: When the last slave is removed, set master to the original classes. 2007-11-12 11:35:18 +10:30
Makefile.am Xi: remove RegisterPairingClient handling. Deprecated with device hierarchy. 2007-11-13 17:31:20 +10:30
opendev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
opendev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
qryacces.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
qryacces.h Xi: Add access control request handling. 2007-02-22 20:00:59 +10:30
querydp.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
querydp.h xfree86: Changing "IsMPDevice" to "SharedPointer" option. Devices will default 2006-12-20 13:05:53 +10:30
queryst.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
queryst.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
selectev.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
selectev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
sendexev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
sendexev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setbmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
setbmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setcptr.c Xi: ProcXSetClientPointer should directly check for the client from the id. 2008-01-03 18:48:13 +10:30
setcptr.h Xi: Add SetClientPointer request handling. 2007-03-09 15:45:25 +10:30
setdval.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
setdval.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setfocus.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
setfocus.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setmmap.c xace: add new hooks + access controls: XInput extension. 2007-09-28 08:02:00 -04:00
setmmap.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
setmode.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
setmode.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
stubs.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
ungrdev.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
ungrdev.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
ungrdevb.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
ungrdevb.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
ungrdevk.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
ungrdevk.h indent fixes (OMG SO UGLY), and nuke old RCS keywords. 2006-02-20 22:16:49 +00:00
warpdevp.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
warpdevp.h xfree86: Changing "IsMPDevice" to "SharedPointer" option. Devices will default 2006-12-20 13:05:53 +10:30
xiselev.c Xi: switch to using "rc" (instead of "err") as returncode. 2008-01-03 18:36:33 +10:30
xiselev.h Add missing files for ProcXiSelectEvent. 2007-05-02 13:51:16 +09:30