Go to file
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
afb Merge branch 'master' into XACE-SELINUX 2007-11-19 18:10:46 -05:00
cfb Merge branch 'master' into XACE-SELINUX 2007-12-13 18:38:25 -05:00
cfb32 get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE 2006-07-18 18:17:38 -04:00
composite Revert "registry: Register composite extension protocol names." 2007-11-20 17:27:37 -05:00
config Config: HAL: Don't leak options on failure to add device 2007-12-28 15:51:36 +02:00
damageext Revert "registry: Register DAMAGE extension protocol names." 2007-11-20 17:31:00 -05:00
dbe Clean up many #if 0. 2007-12-02 12:40:25 -05:00
dix dix: Process an input event as a single event, instead of two separate ones. 2008-01-15 18:41:51 +10:30
doc Merge branch 'master' into XACE-SELINUX 2007-11-19 18:10:46 -05:00
exa Fix Line drawing with CapNotLast set in PolySegment. 2008-01-04 12:37:55 +00:00
fb Merge branch 'master' into XACE-SELINUX 2007-12-13 18:38:25 -05:00
GL regenerated to add framebuffer object tokens (bug 13800) 2008-01-01 09:27:44 -07:00
hw Merge branch 'master' into mpx 2008-01-10 13:38:46 +10:30
include Xi: keep a counter of buttons down to avoid duplicate press/release events. 2008-01-09 17:36:39 +10:30
mfb devPrivates rework: put back some changes that were mistakenly removed 2007-11-20 15:31:44 -05:00
mi Merge branch 'master' into mpx 2008-01-10 13:38:46 +10:30
miext Rootless: Fix lvalue error from devPrivates change 2007-12-29 00:02:16 +02:00
os Merge branch 'master' into mpx 2008-01-10 13:38:46 +10:30
randr Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
record Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
render Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
Xext Merge branch 'master' into mpx 2008-01-10 13:38:46 +10:30
xfixes xfixes: switch a few inputInfo.pointer to PickPointer 2008-01-03 18:43:18 +10:30
Xi dix: Process an input event as a single event, instead of two separate ones. 2008-01-15 18:41:51 +10:30
xkb Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
XTrap Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
.gitignore Merge branch 'master' into XACE-SELINUX 2007-12-14 00:32:24 -05:00
acinclude.m4 Include comment/copyright/license for AC_DEFINE_DIR in acinclude.m4 2007-07-25 17:42:23 -07:00
autogen.sh DeliverEventsToWindow: ensure that genericMask has a defined value. 2007-07-10 19:11:30 +09:30
configure.ac GL: Add GLX compile flags lost in modular X server changes 2007-12-29 00:00:04 +02:00
COPYING COPYING: Collapse 'canonical license' into one statement 2007-11-07 03:58:56 +02:00
cpprules.in For MANDEFS, also replace __mandir__ for $(mandir) which includes 2006-12-08 15:51:44 -06:00
Makefile.am Generate ChangeLog file for make dist. 2007-07-10 21:33:54 -07:00
xorg-server.m4 Add xorg-server.m4 for driver dependency checking. 2005-11-01 15:01:51 +00:00
xorg-server.pc.in Export the server ABI versions from xorg-server.pc 2007-11-05 17:18:46 -05:00