The matching commit in libXi is
e8531dd6a981c6cf19a1d256c29e886e34e8f51a
libXi-1.4.2-21-ge8531ddp
Add XI2 library-internal array offsets to XIint.h
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
No functional effect, just to improve readability of code.
It's not obvious what "True" or "False" stands for in a function with 11
arguments. Compare
XIGrabButton(dpy, deviceid, button, grab_window, cursor,
GrabModeAsync, GrabModeSync, True,
event_mask, num_modifiers, &modifiers);
vs.
XIGrabButton(dpy, deviceid, button, grab_window, cursor,
GrabModeAsync, GrabModeSync, XIOwnerEvents,
event_mask, num_modifiers, &modifiers);
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
XI 2.0 headers forced clients to mix XI2 specific constants with defines for
core input. Most notable here are the grab code which required GrabModeAsync
or GrabModeSync from core, but _not_ AnyModifier (XIAnymodifier !=
AnyModifier). This is a hard-to-debug cause for bugs.
Add defines for grab modes, grab return codes and property modes as well as
a define for the AnyPropertyType. These defines are identical to the ones
defined in core but stop the use of input-related defines from either core
or XI 1.x.
Clients must use the core defines None and CurrentTime where applicable.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Reword the introduction to the multitouch section to try to be a bit
clearer, and go on a mad section-labelling spree.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Add very visible FIXME sections to more clearly mark what's broken; also
remove the stipulation that only one grab may be active at a time.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
The #warning directive is intentionally outside the define to disable the
error. Early adopters of the protocol can't see this warning often enough.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
The previous definition would give the wrong result for events that are
a multiple of 8.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
The vast majority of this patch are indentation changes, removing preceding
spaces from text.
Header lines and some linebreaks to enable list parsing were added.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
This is to restructure to get the simple cases clarified up first before
explaining more complex changes.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Though this protocol description is mainly to be viewed as textfile, a few
minor changes make it parsable for asciidoc to spit out reasonably
nicely-formatted html code.
Changes include:
- underline section headers with the matching lines
- add linebreaks before lists to parse them as lists
- change indentation level for normal text to be left-marging aligned and
for <pre> text to be indented
- comment out section dividers
It's possible to run asciidoc XI2proto.txt and get some nice html output
now.
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
Also includes resolutions for dependent devices and implicit grabs and
how to handle slave touch device attachment and touch selections.
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Introduce multitouch support through a new TouchClass, as well as new
TouchBegin, TouchEnd, TouchOwnership, TouchUpdate, and TouchUpdateUnowned
events. Bump to version 2.1.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Co-authored-by: Chase Douglas <chase.douglas@canonical.com>
Co-authored-by: Peter Hutterer <peter.hutterer@who-t.net>
I'm now getting build failures due to missing stdint.h. It seems we
should include it explicitly in XI2proto.h anyways.
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Take the error codes as described in the man page for XSetDeviceMode. This
is more likely to be what clients expect, especially since the protocol spec
doesn't actually define when BadMode is to be reported.
This behaviour is the same as specified in the XSetDeviceMode man page.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Fernando Carrijo <fcarrijo@yahoo.com.br>
Unrelated to the previous patches, the new value simply reflects
the reality that the minimum level for autoconf to configure
all x.org modules is 2.60 dated June 2006.
ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.60.tar.gz
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>