Find a file
Daniel Martin 4fce9448b6 xinput: Cleanup implementation of XI up to v1.4
- Structural changes:
  * indent with spaces only (replaced tabs)
  * indent attributes
  * move structures in front of the first request using it
    (Otherwise c_client.py would generate uncompileable code if we fix
     the uninterpreted lists.)
  * add version-controlled section comments (types, requests, events,
    errors) and move structures into their corresponding section
  * sort events and eventcopys by number

- Additions:
  * add various missing enums and structs (i.e. DeviceChange,
    DeviceControl, DeviceName, ...)
  * uncomment commented out requests
  * linked in various enums into fields (via enum or altenum)

- Other changes:
  * link to the txt specification in the git repo
  * fixed comments for "uninterpreted lists"

- API CHANGES:
  * Request: GetDeviceMotionEvents
    The reply contains a list of events (of coordinates). So, we rename
    num_coords to num_events. The field is called nevents_return in the
    specification. The list was commented out anyways, so the rename
    shouldn't affect that much.
  * Request: SendExtensionEvent
    The list 'events' is a mask, make it a CARD8 like every other mask.
  * Events: FocusIn/Out
    Those ones haven't been named properly. They are called
    DeviceFocusIn/Out in the specification. In XI2 the names FocusIn/Out
    are used to introduce new events and cause name clashes. So, we have
    to rename the existing FocusIn/Out and give them their proper names.
  * Structures: *Feedback{Ctl,State}
    Rename the field id to feedback_id, as it's called in the spec. The
    only lists using those structs are commented out yet. So, this might
    not be called an api break.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
2013-08-15 00:00:52 +02:00
doc Add support for X Generic Extension events 2013-07-12 15:54:14 -04:00
src xinput: Cleanup implementation of XI up to v1.4 2013-08-15 00:00:52 +02:00
xcbgen Add support for X Generic Extension events 2013-07-12 15:54:14 -04:00
.gitignore Add py-compile to .gitignore 2009-09-22 16:08:11 -04:00
autogen.sh autogen.sh: Implement GNOME Build API 2013-01-16 13:20:49 -05:00
configure.ac Release xcb-proto 1.8 2012-10-05 14:43:12 +02:00
COPYING Fix the year in the other COPYING. 2006-04-27 17:58:37 -07:00
INSTALL Remove xcl and CVSROOT. 2006-02-18 16:49:41 -08:00
Makefile.am Add autogen.sh to EXTRA_DIST. 2012-02-10 17:44:33 +09:00
NEWS Release xcb-proto 1.8 2012-10-05 14:43:12 +02:00
README Add Python parser language-independent parts. 2008-04-19 04:30:21 -04:00
TODO Add test program for XFree86-DRI extension to xcb-demo. Mark XFree86-DRI extension as tested and working. 2006-04-27 14:14:54 -07:00
xcb-proto.pc.in add libdir/exec_prefix to xcb-xproto.pc 2011-11-10 15:36:54 +01:00

About xcb-proto
===============

xcb-proto provides the XML-XCB protocol descriptions that libxcb uses to
generate the majority of its code and API. We provide them separately
from libxcb to allow reuse by other projects, such as additional
language bindings, protocol dissectors, or documentation generators.

This separation between the XCB transport layer and the
automatically-generated protocol layer also makes it far easier to write
new extensions. With the Xlib infrastructure, client-side support for
new extensions requires significant duplication of effort. With XCB and
the XML-XCB protocol descriptions, client-side support for a new
extension requires only an XML description of the extension, and not a
single line of code.

Python libraries: xcb-proto also contains language-independent Python
libraries that are used to parse an XML description and create objects
used by Python code generators in individual language bindings.  These
libraries are installed into $(prefix)/lib/pythonX.X/site-packages.  If
this location is not on your system's Python path, scripts that import
them will fail with import errors.  In this case you must add the
install location to your Python path by creating a file with a `.pth'
extension in a directory that _is_ on the Python path, and put the
path to the install location in that file.  For example, on my system
there is a file named 'local.pth' in /usr/lib/python2.5/site-packages,
which contains '/usr/local/lib/python2.5/site-packages'.  Note that 
this is only necessary on machines where XCB is being built. 

Please report any issues you find to the freedesktop.org bug tracker,
at:

	<https://bugs.freedesktop.org/enter_bug.cgi?product=XCB>

Discussion about XCB occurs on the XCB mailing list:

        <mailto:xcb at lists.freedesktop.org>
        <http://lists.freedesktop.org/mailman/listinfo/xcb>

You can obtain the latest development versions of XCB using GIT.
For anonymous checkouts, use:

        git clone git://anongit.freedesktop.org/git/xcb/proto

For developers, use:

        git clone git+ssh://git.freedesktop.org/git/xcb/proto