Edit

IABSD.fr/xenocara/proto/inputproto/ChangeLog

Branch :

  • Show log

    Commit

  • Author : matthieu
    Date : 2012-05-02 19:55:21
    Hash : e7649fb7
    Message : Update to inputproto 2.2.

  • proto/inputproto/ChangeLog
  • commit e752e92dbdcf01b1cd46a3853f582ff765d19e90
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 12:58:18 2012 +1000
    
        inputproto 2.2
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b02b0b42e266560bd48f7e8f38c8338417394fd0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 29 15:08:01 2012 +1000
    
        specs: XI 2.2 release date is March 2012
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 950a7a0b2e733d9713a88612b669603b0c155329
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 29 14:55:26 2012 +1000
    
        specs: Remove work in progress warning
        
        We're close enough to a release now.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3ac053f2c7ef8d07b4a6dcb64d8ca47edad15716
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:31:26 2012 +1000
    
        specs: remove "since" from TouchOwnershipEvent
        
        It's already in a section "Events introduced in version 2.2"
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b42e4d24a26fb8467ed54183480c9dacd66fc804
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:28:46 2012 +1000
    
        specs: remove TouchOwnership mention from DeviceEvent
        
        TouchOwnership is described separately below.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit a09ca92ce31ede86b883cb74fb1767f8ed687ca5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:26:04 2012 +1000
    
        specs: whitespace fix to avoid wrong asciidoc formatting
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b1458f6fa9952365f4ad86dc87b385d467318fb1
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:25:03 2012 +1000
    
        specs: fix link to touch ownership section
        
        Introduced in 535a4377ddb4c2680d54b4cbbb273134bb5f58a3
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b321ea46fbb251970c2d655b73209750f24c0b8e
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:21:12 2012 +1000
    
        specs: GrabtypeTouchBegin was added in XI 2.2
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3773e33579f0b5bd6de9f01481b8608fa3101a2b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:19:42 2012 +1000
    
        specs: formatting fix, move AcceptTouch and RejectTouch onto their own line
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 4de6f26a705062343f5b93dd9827a736c721e265
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:08:33 2012 +1000
    
        specs: replace † with ²
        
        † looks too much like a letter and we can't use * and ** because asciidoc
        interprets it as lists.
        
        Use numbers instead, and replace all current * with ¹.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 000a20296a3c52f4232aa466d29faa2e424ca626
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 10:07:21 2012 +1000
    
        specs: XITouchClass doesn't have properties
        
        Leftover from an earlier version.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 0d7bfc10bffa29de1b7217d6399e8f0d5b24c579
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 09:55:21 2012 +1000
    
        specs: Formatting fix
        
        asciidoc requires caption to be on one line but this one here is too long.
        Split it up instead.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 883143e3454c7fe44b12b11fc12ff3ec2267ecd1
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 2 09:32:18 2012 +1000
    
        specs: some wording fixes
        
        Button press events are insufficient even on scroll wheels, so don't say
        they are good enough.
        
        Remove duplicate claim of event emulation
        
        Don't claim we send touch events "without delay"
        
        Touch screens hardly ever "physically move" an object.
        
        Hyphenate "implementation-dependent"
        
        Remove unnecessary "however"
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 9a2e10213c996010124a3d58e71140f41202416c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 29 14:56:37 2012 +1000
    
        specs: fix typos 'hierachy' → 'hierarchy'
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 5e18f74e24a17d6a1f18339600a00f5591dc6a82
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 8 03:17:28 2012 +1000
    
        Unbreak protocol ABI for XIAllowEvents - inputproto 2.1.99.6
        
        XIAllowEvents was extended with touchid and grab_window in
        2ea2f99f4fe1dcd3b8e539ca41c482fc40a0533d. This extended the size of
        the request from 12 to 20 but also broke the ABI. Older server
        match the request size exactly, so compiling libXi 1.5 against
        inputproto 2.2 and then running it against a pre-XI 2.2 server causes a
        BadLength for any XIAllowEvent request.
        
        Add a new request for the new data.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Keith Packard <keithp@keithp.com>
    
    commit 217afacda01b082f39fb6816e62ec20e4791857f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jan 26 13:56:38 2012 +1000
    
        specs: explain touch behaviour for dependent devices
        
        Dependent devices don't send touch events until the interaction is a true
        touch interaction (i.e. doesn't just serve to move the pointer). Once that
        happens, all touchpoints send touch events exclusively. Pointer movement
        restarts once we're down to one touch that controls the pointer again.
        
        For clients listening to touch events in addition to pointer events, this
        also means that a two-finger tap looks identical to holding one finger down
        and tapping with a second-finger. Both actions will result in short
        TouchBegin/TouchEnd sequences for both fingers.
        
        The above is the default behaviour we expect from touchpads, the protocol is
        more generically worded to leave more room for drivers to decide when a
        touch only controls the pointer and when it doesn't.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit fc9372868bb772f38a6b17299ef26e3dc9c2ff87
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jan 26 13:36:24 2012 +1000
    
        specs: move touch support details to "Touch device support" section
        
        Keep the changelog small.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 92f769675b0e39c51280db9690db4b3d80637069
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jan 26 13:33:40 2012 +1000
    
        specs: remove superfluous "Changes introduced by ..."
        
        The line right above says the same thing.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 556ea96060071ab807ece4f77304208e15f25f9b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jan 26 13:32:33 2012 +1000
    
        specs: move touch mode explanations to where it belongs
        
        Rather than have two different explanations to the touch modes, remove it
        from the "Changes in version 2.2" section and merge the content into the
        text.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 535a4377ddb4c2680d54b4cbbb273134bb5f58a3
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Wed Jan 25 17:03:15 2012 -0500
    
        specs: replace hard coded number in some "See section" references
        
        The glossary does not accept <<links>> however.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit f3d2feead483f6637ef8ff004afad55b5bbf2c62
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Wed Jan 25 17:03:13 2012 -0500
    
        specs: fix Appendix A title
        
        This section starts a new numbered sequence.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 9ff28b092f91ea1d7ff58f54a9404347f517361b
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Wed Jan 25 17:03:12 2012 -0500
    
        specs: remove older manually typed in section number
        
        These would come out in html as 5.2, 6.3 and 6.4.3.4
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 508a360f6530e75d94cd2999e56cb329b315ce5d
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Wed Jan 25 17:03:14 2012 -0500
    
        specs: use subsections to group use cases description
        
        It makes an entry in the appendix for quick navigation.
        It looks more readable with subtitles.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 08ba2d4e1094fb196d1b7a7b3a3b27a81cb9834c
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Wed Jan 25 17:03:11 2012 -0500
    
        specs: Edit titles for section 3 and 4
        
        In the htlm version, the section number appeared to be 3.2.1 and
        4.2.2 because of the generated section number.
        
        A section title should not begin with a number.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 1306ccf9f262c0c699bec093ffdc4b6695601599
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jan 6 13:35:25 2012 +1000
    
        inputproto 2.1.99.5
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 997ae0343730c66d581fd147741cbe27fbe55af2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jan 3 09:26:22 2012 +1000
    
        Set a flag on the pointer-emulating touch event
        
        Toolkits need to know which touch event emulated a pointer event and which
        ones do not. To quote Carlos Garnacho:
        
            GTK+ does client-side windows by default (GdkWindows without a backing X
            window), for this to work the toplevel window in the client needs to
            select for more events that it wouldn't normally select for in order to
            cater for the event masks in such child "windows". This means that
            ideally GTK+ should set the touch events mask in the toplevel, and then
            find out whether the "window" would receive pointer or touch events for
            the sequence emulating the pointer, and perform the emulation itself.
        
        Reported-by: Carlos Garnacho <carlosg@gnome.org>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 5ee845c1bf457159a034111c3d0df584aa600cd6
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jan 3 09:24:38 2012 +1000
    
        specs: purge leftover TouchAccepted note
        
        This flag does not exist anymore.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit e65ba758c2d4147c3873c63c262db36ec23bba63
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jan 3 09:23:23 2012 +1000
    
        specs: only pointer events have a PointerEmulated flag
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 9611be0a5bc7f4d583d49d51a0e98d3b9b75fc7a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Dec 23 18:03:09 2011 +1000
    
        specs: Clarify rejection for touch events on current owner
        
        The current owner never gets a TouchUpdate(PendingEnd), that event is
        superfluous for the owner. The owner receives a TouchEnd when the touch
        physically ends. If the touch is still active, the owner receives a
        TouchEnd after rejecting the touch.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b9f1b26f076cdba373e8b7a0b73384b35e8d799c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 21 15:30:22 2011 +1000
    
        inputproto 2.1.99.4
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b4da32ed2856fef3e8135f03c9194f9dd0287f66
    Merge: 8640944 c508e93
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 21 15:28:44 2011 +1000
    
        Merge branch 'multitouch-devel'
        
        Conflicts:
        	configure.ac
        	specs/XI2proto.txt
    
    commit c508e9360414f9724cc875a4731a5fd8a3969d2b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 21 15:27:47 2011 +1000
    
        specs: add XI 2.1 release to history section
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 5c9a6569e5182a4c4c6ec052bcd76a9ca3b8f645
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 21 15:24:44 2011 +1000
    
        Remove --enable-unstable-protocol configure option
        
        Protocol is reasonably stable and about to be merged onto the master
        branch. People should be used to stuff on master being a tad unstable, don't
        require any specific configure flags.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit aef700dbac09d3c8a576387be47e5693460f1393
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 21 15:23:23 2011 +1000
    
        specs: remove parts of the "Work in progress" warning
        
        The protocol is stable enough now that a simple warning should be enough.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9a9746b95f3585bba9730105769e9c74520f6bc4
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Dec 20 08:23:55 2011 +1000
    
        Reinstate libXi's version defines
        
        Realistically, we can't remove these from the protocol without breaking
        older libraries.
        
        Introduced in a02566ca7fd37d279b957037e1251a3b3419866d
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit ee0bc61ee3fd775127f8cd222d83314f66255f2b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Dec 20 08:22:52 2011 +1000
    
        Drop wrong comment for sourceid in TouchOwnershipEvents
        
        Copy/paste error from DeviceChangedEvent
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 8640944f4ff193027ce0f21622918b88da910e72
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Dec 16 11:06:13 2011 +1000
    
        inputproto 2.1
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b701750ee99e1e227ad8baa994b6fd3398949a3a
    Author: Cyril Brulebois <kibi@debian.org>
    Date:   Thu Dec 15 17:07:54 2011 +0100
    
        specs: Fix tiny typo.
        
        Signed-off-by: Cyril Brulebois <kibi@debian.org>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 8687f155d8072763c2c7d52cb48eb5f46bfaf705
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 14 08:56:59 2011 +1000
    
        specs: clarify button state in touch events
        
        Emulated pointer events will have button 1 logically down, but touch events
        only represent the actual button state, irrespective of the touches.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b1d71fe4cd3871a78e442159443c141193e79a7f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Dec 14 08:56:09 2011 +1000
    
        specs: drop leftover from active_touches removal
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 02eadf00f07abb9b0f19a05728b70e42eac08adb
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Dec 13 10:35:18 2011 -0800
    
        inputproto 2.1.99.3
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 84c049b6603e370afcd267ce4c53a566f842fd69
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Mon Dec 12 10:50:58 2011 -0800
    
        State that future touch IDs are indeterminate
        
        This just makes it absolutely clear that clients should not make any
        assumptions about future touch ID values.
        
        I also added "strictly monotonically" increasing to the definition of
        touch IDs. It's a more precise definition of the protocol.
        
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 7d20c9bf38d3d47adc7fb1a70faa370dda1a390c
    Author: Chase Douglas <cndougla@cndougla.(none)>
    Date:   Fri Dec 9 13:32:35 2011 -0800
    
        Touch IDs must be globally unique
        
        XIAllowEvents with a master device and a touch ID must uniquely identify
        a touch sequence. If touch IDs were unique per slave device, multiple
        slave devices could have valid sequences with the same touch ID, and the
        sequences may both be grabbed through the same master device grab.
        
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit c4703fd9d97c962d5c599a7f826a9a11fc91ee70
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Dec 12 10:26:20 2011 +1000
    
        Remove XI2.1 and XI2.2 warnings and errors
        
        This is too much of a pain, anyone who includes XI headers needs to define
        this. And that affects input and output drivers as well as legacy clients
        that don't even need the new stuff.
        
        Removing the need for defines would be enough but then the warnings clog up
        the output and hide real warnings. Just ditch them and laugh at those that
        use an experimental branch and expect it to work.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 019a252a59c1d076b07a0162cb3ee6af42ceea14
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Dec 2 15:03:46 2011 +1000
    
        specs: typo fix
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit a9fcea66eb18fab330f3b27b3daedef2b5c9210a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Nov 11 14:33:34 2011 +1000
    
        specs: smooth scrolling was added in 2.1, say so
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit c9c4e13e8a3eb90b45c5ef65f729089b7f742e6a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Nov 11 14:22:08 2011 +1000
    
        inputproto 2.1.99.2
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 279524b089c7b42871ee072cfc03a1fad7421b7b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Nov 8 15:36:02 2011 +1000
    
        specs: scroll events have no specific event type, state so.
        
        This wasn't clear enough in the current spec.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9f2b1a33063b139756e08951affe802e8af39a76
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Nov 8 15:29:24 2011 +1000
    
        specs: We're up to version 2.1 now, say so
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b289b1c039e36a9440c238ff09dfa3eb67e141e4
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Oct 20 15:55:54 2011 +1000
    
        XI2: Use touchid, not touch_id in XIAllowEvents
        
        Be consistent with other usages of touchid.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 86ce2d05e86852d52f5b135ad03288e4cb16d5df
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Nov 3 09:30:20 2011 +1000
    
        XI2: swap (Raw)TouchUpdate and (Raw)TouchEnd
        
        Not having the event codes in the order begin/update/end does my head in
        when debugging. It also means there's no symmetry between raw and normal
        touch events as the ownership event is wedged in between.
        Rearrange event codes to be Begin/Update/End for both, with the
        OwnershipEvent being in between.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 463ffaabab506ad6ddb3b55c5781ae91fcccfd04
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Sep 23 08:41:18 2011 +1000
    
        specs: clarify that Preferred scroll valuators are per scroll direction
        
        Reported-by: Daniel Stone <daniel@fooishbar.org>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit cec7567863c3d363b6b75c707540cfe524f849ba
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Sep 14 22:09:28 2011 -0500
    
        Revert addition of active_touches to device events
        
        I can't remember why it's there, and I don't see how it may be useful.
        If a client really wants to know how many touches are on the device,
        they can listen to raw events and count the number of active touches.
        
        (Real reason: extending events is hard :)
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 22c06a5ddb1d3be2743a79b78eff3844f457dc5e
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Sep 14 20:15:49 2011 -0500
    
        Fix Xi 2.x version comment in XI2.h
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 88410aa51d03dbb5599e979998137ba6558ff677
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 16:59:54 2011 -0500
    
        inputproto 2.1.99.1 (first snapshot of 2.2)
        
        Note that this is built on top of 2.0.99.1, which is a development
        snapshot of 2.1.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit fa16231f0e5244cdcf77e262647525716f507bdd
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Sep 14 10:10:14 2011 -0500
    
        Allow grabbing clients to accept or reject touches any time
        
        This is potentially both a performance and client complexity
        improvement. An example is a gesture recognizer using touch grabs on
        each window with a subscription. If events on a child window are known
        to not match any subscription on the child window, then the client
        should be able to reject the touch grab even if the parent window hasn't
        accepted any of the touches, perhaps because the parent window
        gesture hasn't timed out or crossed other thresholds yet.
        
        As an inverse example, the events may match a child window subscription
        before the root window has rejected ownership. The child window should
        be able to accept the touch proactively. This allows for further clients
        to receive a TouchEnd event earlier, and means the client may be able to
        reduce state being tracked. If this were not allowed, the client would
        need to wait until it received ownership before accepting the sequence.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 2ea2f99f4fe1dcd3b8e539ca41c482fc40a0533d
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Sep 14 09:46:18 2011 -0500
    
        Extend XIAllowEvents for handling touch grab processing
        
        This removes the XIAllowTouchEvents request, which was the only new
        request added for multitouch.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 3c400af4f98740debd7916ad711cf91124a0f994
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 15:47:15 2011 -0500
    
        Add event windows to ownership events
        
        Also, match device event structure to make things easy.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit dd9e4bc5f5f2e0eb87b08199ce417849070249ab
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 15:30:34 2011 -0500
    
        Really kill touch valuators
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 05fc509fdca8d8b414a20f1359b9cb80caf5240a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Sep 14 05:46:43 2011 +1000
    
        specs: if a sequence ends, all clients get TouchPendingEnd
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 94fecdf129d8ab5bece049a26eed03d24affb549
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Sep 14 05:26:54 2011 +1000
    
        specs: remove broken asciidoc link to XIAllowTouchEvents
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 4782a76b6e679493f130a53afe158a13628fa504
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Sep 14 05:25:15 2011 +1000
    
        specs: remove comment about overlapping selections, not true
        
        There are no overlapping selections for touch events.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit dd32802d2e6134cf9c4efd49c56c118ed02e6a2b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Sep 14 05:21:31 2011 +1000
    
        specs: misc typos, rewording, etc.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit cfa06b98d50d6892e5961e86f6223b6b096d9ef4
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 15:09:57 2011 -0500
    
        Bump version to 2.1.99 for XI 2.2 multitouch changes
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 24e7dac91fb919c1668736f6e4309ae522a96d86
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 14:27:13 2011 -0500
    
        Switch multitouch additions to XI 2.2
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b95adf9b14ff5ba2142e8521f02728dc6d903409
    Merge: d6dcfd4 9cfdeed
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Sep 13 14:20:31 2011 -0500
    
        Merge remote-tracking branch 'inputproto/master' into multitouch-devel
        
        Conflicts:
        	XI2.h
        	XI2proto.h
        	specs/XI2proto.txt
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit d6dcfd4039ede37e9c858ab6e890fdb9582a5a9d
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Mon Sep 12 16:01:53 2011 -0500
    
        Revert "Specify dependent device pointer/touch handling"
        
        See parent commit for details.
        
        This reverts commit 4adfb5ad6c064981e2c7eb57db4bdd81cc7029ea.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 42284fa0a233240d365ff2b49cc34c257e2d2bee
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Mon Sep 12 15:55:28 2011 -0500
    
        Revert "Fix touch cancel/resume semantics"
        
        The main use case for this was drag and drop, which we realized does not
        need any special handling that requires canceling touches.
        
        This reverts commit 9e46820e4a206ae48b3e87f6ef7506e583fa3793.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 1b40cc4ff63ebbf0a4b17507762b17fa1e91bea9
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 29 09:20:32 2011 +1000
    
        specs: extend XI2.1 raw events to include touch events
        
        RawEvents are simple enough that we can re-use the detail field for the
        touch ID tracking and just update the respective event types.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b55d236a66a614b2192da6d8a7ed4b7d831976f5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 29 09:20:31 2011 +1000
    
        Add comment to XI2.h to mark where the 2.1 events start
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3d23bf3782c9962b70dfa46ea34c86efee57eeb2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 29 09:20:30 2011 +1000
    
        Change file header to note version 2.x
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 63f3097d264f790419ce59744e8d2733f9bb1026
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 29 09:20:29 2011 +1000
    
        specs: Fix event lists for asciidoc parsing
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 4329d45d49741aad0e93f8e064042ba83e6a23a0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 29 09:20:28 2011 +1000
    
        specs: Fix in-document references
        
        The primary format for the specs is still the txt format (since that's
        guaranteed to be available anywhere, including cgit). Having in-paragraph
        references breaks the flow of reading. Fix up some references that aren't
        strictly necessary anyway, reword some to be easier to read and change the
        titles of some to match the actual title of the section.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 9cfdeedd16e96c0e67e70537e97a8f8dd0358244
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jun 2 16:09:23 2011 +1000
    
        inputproto 2.0.99.1 (first snapshot of 2.1)
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
        Reviewed-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 7d5a303cd8976a7eac1b96897c70d5d25c57ecf1
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 15 12:33:04 2011 +1000
    
        Move scroll information into a new class.
        
        Using labels only to mark smooth scrolling axes disallows scrolling from
        hardware events (e.g. a mouse wheel). If those axes are marked as scrolling
        axes instead, the clients lose information which hardware axis this event
        corresponds to.
        
        For example, on Wacom devices, the client can benefit from smooth scrolling
        on the strip or wheel event but may still require the knowledge whether the
        axis is a vertical strip (e.g. Intuos3) or a absolute scrolling wheel (e.g.
        Intuos4).
        
        Thus, add a new class to XIQueryDevice that represents scrolling information
        on a valuator. One of these ScrollClass may exist for each ValuatorClass if
        that valuator is a scrolling valuator. The increment field of this class
        removes the requirement for 1.0 == 1 unit of scrolling.
        
        This isn't true in most cases, especially where physical scroll axes are
        involved. Wacom Intuos4 scroll rings have a unit size of 3.0 and the driver
        historically sent one scroll event per 3.0 increment or decrement. Mapping
        one scroll event to 1.0 makes the ring mostly unusable through legacy
        button events.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 186aa20619d1720bde49fd92d2834c8f9eadf49b
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Wed Feb 23 17:37:29 2011 +0000
    
        Document smooth-scrolling support
        
        Two new axes are added to support smooth scrolling: Rel Vert Scroll and
        Rel Horiz Scroll.  Cumulative values of 1.0 with either magnitude on
        these axes are considered to be equivalent to one legacy ButtonPress
        event on the scroll buttons.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 53b58e679f977550301130794c8cb19391ecceb7
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue Feb 15 14:27:53 2011 +0000
    
        Add XIPointerEmulated for emulated events
        
        The XIPointerEmulated flag on pointer events means that the event was
        emulated from a smooth-scroll or touch event to support legacy events,
        and the client may ignore this if it is listening to the other events.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit af1fb609beece899188469a81ac9d8c5e07bfa4a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jul 29 10:09:02 2011 +1000
    
        Add sourceid to RawEvents (#34420)
        
        RawEvents in XI2 do not provide the source ID. The libXi headers however do
        and it is currently always 0. Given that the sourceid may be useful for
        some clients, send it down the wire.
        
        This has no effect on the wire size of the struct, we can re-use a pad byte
        here.
        
        X.Org Bug 34420 <http://bugs.freedesktop.org/show_bug.cgi?id=34420>
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 1e63d01d041108db6fe5be32d033e80419a6ab05
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Apr 12 13:07:53 2011 +1000
    
        XI2.1: send RawEvents at all times.
        
        When a client grabbed a device, XI 2.0 only sends RawEvents to that client.
        This behaviour is problematic and cannot be worked around for many
        applications that need to continue receiving events.
        
        On the other hand, no client seems to rely on this behaviour or use it to
        its advantage. For XI 2.1, disable this behaviour and continue to send raw
        events regardless of the grab state of the device.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Acked-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Daniel Stone <daniel@fooishbar.org>
        Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
    
    commit b35f20b7bd9620710a7a6b63e39758fe83b4dec8
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 8 13:26:27 2011 +1000
    
        Announce 2.1 availability through the XI_2_Major and XI_2_Minor defines
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 47a2cc250398648732ba2086ca6ecb21e7dabdc0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 8 12:59:17 2011 +1000
    
        Bump to 2.0.99
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9e46820e4a206ae48b3e87f6ef7506e583fa3793
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Aug 24 15:10:21 2011 -0700
    
        Fix touch cancel/resume semantics
        
        If a touch is ended through a cancel, the client may never know if the
        touch will come back as a resumed sequence. Instead, send a touch update
        with the cancel flag, like the pending end flag, and send an end event
        only when the full touch sequence has ended.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 79c22a2e7b3c2bf73cd8af7eba7182198f13d2e4
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Aug 24 13:34:47 2011 -0700
    
        Fix indentation of active_touches definition
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit cec253561ab3feaa0a5a57fa8aa47db15662cf3d
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Wed Aug 24 13:32:30 2011 -0700
    
        Introduce Touch grab mode
        
        Touch grabs are not really synchronous nor asynchronous. Use a separate
        grab mode value for touch grabs, just to make the protocol seem more
        sane.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
        Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1cb00433583341b3c52c8d3f62dcd19a55ddca29
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:23 2011 +1000
    
        DeviceEvents: a TouchPendingEnd won't generate further TouchUpdate events
        
        Update, not motion.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b025106fe8d8aa3043abd48ba3f50bde29527939
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:22 2011 +1000
    
        DeviceEvent: active_touches needs marker that it's XI 2.1
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit f469fa99ae9ffda806c3e935bbebc73d633f8c10
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:21 2011 +1000
    
        AllowTouchEvents can take any device id, not just slaves
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit d7fd289ee02d7ebc4cac5357edaaac1b55a7d10c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:19 2011 +1000
    
        Indent Ownership explanation for consistent formatting
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit e51dd1b6bd4aa506231a41cbb400a8ece5a6aeaa
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:18 2011 +1000
    
        Reword the passive touch grab rules to be similar to the others
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 67e06b8f14ac39c6c38e851b94b879024ff806a9
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:17 2011 +1000
    
        Fix missing 'and' in GrabTypeFocusIn description
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 5b8a8bd0b4e779b947093f9722a2af2568c27118
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:16 2011 +1000
    
        XISelectEvents: BadValue is generated, not returned
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit ae6ba6b37e47134914b8fedb6524372f0a8119c0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:15 2011 +1000
    
        Coordinates are always absolute, no need to re-state it
        
        Coordinates in DeviceEvents are always absolute, regardless of the axis
        mode. The same is true for touch events, stating it again here just adds to
        the confusion.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 544ce0cee3cc146ed1df06ed5762d21ecdfe9e8a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:14 2011 +1000
    
        Add two linebreaks for asciidoc list parsing
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 9e46dd35896c2517b1c95224b979fc7126dce49f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:13 2011 +1000
    
        Changing the touch device mode generates a DeviceChangedEvent
        
        State it explicitly.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 1b0c016d1f7615e3670fa97fc8f24bc6b79e4f7b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 24 09:07:11 2011 +1000
    
        XITouchClass' props needs a num_props
        
        In XI2 requests, the length field isn't enough to determine the number of
        elements since it may vary in future versions.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 94b21b47b51c2c66aa0372dfc323d6aedf12b549
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 23 15:28:50 2011 +1000
    
        specs: fix two typos in XI2proto.txt
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9f33733fffddd166c64f0bfd293c3de385cf4411
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 17 16:02:39 2011 +1000
    
        specs: ValuatorClass includes a mode
        
        Documented in the description, but missing in the definition.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 4adfb5ad6c064981e2c7eb57db4bdd81cc7029ea
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Fri Aug 5 15:28:51 2011 -0700
    
        Specify dependent device pointer/touch handling
        
        With the added rules, trackpads should be manageable no matter what
        occurs (button presses and pointer motion). Gesture and touch semantics
        during these actions are not well defined, and cancelling touches cleans
        up the protocol and implementation.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 29cd8aac674b1d831814b48b2ee2f2f7ff16497b
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Fri Aug 5 14:41:59 2011 -0700
    
        Use the same valuator axes for pointer and touch events
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b5e357c76dc5d8b2176fa470186688ec943d08e6
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Fri Aug 5 14:49:32 2011 -0700
    
        Remove touch "Observe" grabs
        
        The semantics of these grabs doesn't work for all use cases. Raw touch
        events will likely work better.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3172e3c52eb45e4830d85ae53888d0b28c13df62
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Fri Aug 5 14:20:05 2011 -0700
    
        Fix up pointer event emulation section
        
        * Wording cleanups for tense and to make some sentences flow better.
        * Upon further review, it does seem to make more sense to deliver
          emulated pointer events through the same slave device rather than the
          master device. Thus, slave devices (including floating devices) may
          emit emulated pointer events.
        * Peter is correct, it doesn't make sense to set the PointerEmulated
          flag on touch events.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit b15ad6e0dc1759e514c998eecd7e61b25308add6
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Fri Aug 5 13:59:05 2011 -0700
    
        Peter is right, floating devices can emit touch events
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 951cb8314343fcd5cdc392dfc78024fa184fc694
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Aug 2 15:53:35 2011 -0700
    
        Prettyify touch device types
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 45387042f8fa767dda610936557548adf76306c5
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Aug 2 15:29:54 2011 -0700
    
        Update device type terminology
        
        Remove IndepedentTouch and SemiMultitouch devices. These may be handled
        in an implementation specific manner through the props array of ATOMs in
        the touch class information.
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3a2f149b33531d02fff8e46181ffdcfcecb0c8cb
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Aug 2 15:23:21 2011 -0700
    
        Yes, send TouchEnd to owner, TouchPendingEnd to other listeners
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 343fd699457483d1572b5229874f8ce6460a9b2d
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Aug 2 15:22:15 2011 -0700
    
        Separate "XI2.x" into "XI 2.x" for readability
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit 3cbc9b68a314b2986afa811f81f76c941be1973b
    Merge: d331251 2ba875f
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Tue Aug 2 14:09:11 2011 -0700
    
        Merge remote-tracking branch 'origin/master' into multitouch
        
        Conflicts:
        	XI2.h
    
    commit 2ba875f4f2907bb9735ee3317b7e07c5b9d1304b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 2 10:20:53 2011 +1000
    
        Put a warning in about not adding any further libXi defines
        
        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>
    
    commit ee91dcda461513cdca45160df580841daa6f50e2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Mar 17 16:29:08 2011 +1000
    
        specs: add a linebreak for asciidoc parsing
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 2cd2adb7a454072954704e1a215df49ce9dac410
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jun 3 15:56:21 2011 +1000
    
        Provide convenience defines for owner_events.
        
        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>
    
    commit bef7648827a0696debdd629472a45508a30144b1
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jun 3 15:13:12 2011 +1000
    
        Add XI2-specific defines for grab and property requests
        
        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>
    
    commit d331251884101c503c533e088bcace6b830b5a95
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue May 3 18:44:53 2011 +0100
    
        Clean up and reword multitouch ownership/emulation
        
        Remove 'withheld' indirect section as well.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit f17598c1beeadbc648588d192d2e7eb616019e2d
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue May 3 17:21:34 2011 +0100
    
        Mostly typographical
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 2d5294cb0b9dc641e0f8ef1ff5f2a1a1803a57ee
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Thu Apr 28 12:02:43 2011 +0100
    
        Further cleanups and clarifications
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 75790691706447cecc9f7948ea55caba05dc0d7d
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue Apr 26 20:30:13 2011 +0100
    
        Reword touch introduction, labels for all
        
        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>
    
    commit 400365a9bfa9ab3eaaa0bec08e32023f54d04207
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue Apr 26 19:51:41 2011 +0100
    
        typo fix
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 416f077d8747d3d96dd5a71600e1e394226c3dc1
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Fri Apr 22 16:14:54 2011 +0100
    
        Add FIXME sidebars, remove single-grab stipulation
        
        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>
    
    commit a500bc990ba61bf32637114d1840db7147a0deaa
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Fri Apr 22 15:42:09 2011 +0100
    
        Add inline references, fix usecase bulleting
        
        Replace 'see section x.y.z' with better inline links; fix nested
        bulleting of XI 2.1 usecases.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit 3a89a5a3003309f810c9273fac8cf5943238df28
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Fri Apr 22 15:31:52 2011 +0100
    
        Doc note: No seriously, this is WIP
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit b46a3bafd95f1bb507e4851aaa6967cf20c4eb8e
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Fri Apr 22 14:27:06 2011 +0100
    
        Formatting fixups and minor rewording
        
        No semantic changes.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
    
    commit e19eaef83db9181787a13fa95d642971c33d559b
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Mon Apr 11 10:09:57 2011 +1000
    
        Require configure flag to build this proto version.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit ca39f67c2aa5b255f2b85d7c649edff8295eed5e
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 8 13:27:47 2011 +1000
    
        Put a #warning and #error in to avoid unsuspecting XI 2.1 users.
        
        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>
    
    commit b1149ab782619eaeadf70affd94239184e082d03
    Author: Alexandre Julliard <julliard@winehq.org>
    Date:   Tue Apr 12 22:39:25 2011 +0200
    
        XI2.h: Fix off-by-one error in the XIMaskLen definition.
        
        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>
    
    commit ab930a51047f48c7befd4316a9b116f37075697f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 23 13:27:02 2011 +1000
    
        specs: enable asciidoc parsing for XIproto.txt
        
        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>
    
    commit ef7518cc6260e05a00c496c9e0f3a13c8a785b85
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 23 13:32:42 2011 +1000
    
        specs: move erroneous Errors: line to where it belongs
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
        Reviewed-by: Julien Cristau <jcristau@debian.org>
    
    commit ed840d79d3cac60b2fb17448afcc28828236e91b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 16:17:09 2011 +1000
    
        specs: rewrite pointer emulation section
        
        plus a fixme
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 15e76dd365fce4e936a9f468496be3789495103b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 15:29:25 2011 +1000
    
        specs: rewrite pointer emulation for indirect devices
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9c2817fd761bbe6c6da4e2a5638d80fa53975c4b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 15:10:34 2011 +1000
    
        specs: Rewrite Touch events delivery section
        
        And add a fixme
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit c883261f2bad6196e5ff1b3c1397300775e55da7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 14:48:15 2011 +1000
    
        specs: Add a fixme for using raw events instead of GrabModeObserve
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 35710924957791e389e10fcc67b75967769f001c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 14:16:55 2011 +1000
    
        specs: clean/rewrite touch grab and ownership bits
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit f24c9ae749c84d953ee3b35be1ea937dce7b86d3
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 13:58:29 2011 +1000
    
        spec: Move ClientPointer up again.
        
        Prep work to have a separate first-class headline for touch processing
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0e4a782339403f270de6e072262680b3a4baec01
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 13:52:09 2011 +1000
    
        specs: move warning about out-of-band processing up a bit.
        
        The out-of-band processing is really only important for pointer emulation.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1d720b30c996a693014f2c70004c9717945b574f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 12:12:47 2011 +1000
    
        specs: move touch sequence handling (owner-only) up a bit.
        
        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>
    
    commit a4583dcd3e1c18e5c0cc616c143aafbf7ec1d88b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Mar 18 12:02:21 2011 +1000
    
        specs: move from "init move destroy" to "begin update end"
        
        And rewrite that paragraph a bit.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit fe19202c220ce010a85fe5abc0b5a6a0c314ea9a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Mar 17 16:29:08 2011 +1000
    
        specs: add a linebreak for asciidoc parsing
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit f9fa8f9a7dc333b45bfac0b0c6f97b8b1a72d260
    Merge: a02566c 47901cd
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Mar 17 14:51:52 2011 +1000
    
        Merge branch 'master' into chase-multitouch
        
        Conflicts:
        	specs/XI2proto.txt
        
        Fixed up (added) asciidoc for touch proto.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 47901cd142e832eb930166cbfa769e4fbca969c5
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Tue Mar 15 21:37:39 2011 -0400
    
        XIproto.txt: fix whitespace issues
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit 5f43b8b19e6abd00a6295692f3346295bb01b973
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Tue Mar 15 21:29:43 2011 -0400
    
        XI2proto.txt: fix whitespace issues
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit 0ac450f47c55fb2bac394f6377f1aabde1ab8429
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Tue Mar 15 15:43:48 2011 -0400
    
        specs: convert XI2proto.txt to html using asciidoc
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit f21f00bd9b8e641d639d70d086df1b14faa34e38
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 16 09:57:10 2011 +1000
    
        Add minimal asciidoc syntax
        
        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>
    
    commit a02566ca7fd37d279b957037e1251a3b3419866d
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Thu Mar 10 11:53:57 2011 -0500
    
        Many more updates to the XI 2.1 protocol
        
        Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
    
    commit db7c0eccc74e95f247d78541e4c4a28cfa87b5b4
    Author: Chase Douglas <chase.douglas@canonical.com>
    Date:   Sun Feb 20 16:35:09 2011 -0500
    
        Updates for pointer emulation and more touch device modes
        
        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>
    
    commit 99f15a2346c882237c78afbd638932f132d6113c
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Mon Feb 7 10:19:06 2011 +0000
    
        Add touch classes and events, bump to 2.1
        
        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>
    
    commit 13baef91f071ee1607f4c3bf6c1fea60e6651b89
    Author: Fernando Carrijo <fcarrijo@freedesktop.org>
    Date:   Thu Jan 27 22:40:11 2011 -0200
    
        Fix typos in XIproto.txt
        
        Signed-off-by: Fernando Carrijo <fcarrijo@freedesktop.org>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 5c2d5fd99d73ae52aef62376046b5708c58a4271
    Author: Chase Douglas <chase.douglas@ubuntu.com>
    Date:   Fri Dec 17 17:11:09 2010 +0000
    
        Include stdint.h
        
        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>
    
    commit 56ffb564712257e0f998170e83071a6ee85aa231
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Nov 11 14:10:26 2010 +1000
    
        inputproto 2.0.1
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 52e92f280c4e065d6a3f040493a0b46d2c8bee1d
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Aug 2 15:53:52 2010 +1000
    
        Typo fix: GrabTypeFocusIn -> GrabtypeFocusIn
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 3dc8e70f761f7da338c632a5acb0176bef515b33
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 6 09:52:33 2010 +1000
    
        Spell out event types for XIDeviceEvent.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 993ca70d7ecfb88037edfd77bccfcb671aea4c7b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jan 11 17:02:55 2010 +1000
    
        Define the error cases for XSetDeviceMode better.
        
        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>
    
    commit 617c4a2db48e98d06f728fa6b8caa18fbbfb66fc
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Nov 23 10:21:17 2009 +1000
    
        XI2proto.txt: fix up some request names.
        
        Leftovers from previous versions of the spec before the requests were
        renamed.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b2e8bd74f0922e742ab41e9ccc202c0fdd9e152f
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Mar 28 19:25:52 2010 -0400
    
        config: update AC_PREREQ statement to 2.60
        
        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>
    
    commit 5e22edcb54a29393ffb72e4014010835d1ceab69
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Mar 28 19:00:31 2010 -0400
    
        config: remove the pkgconfig pc.in file from EXTRA_DIST
        
        Automake always includes it in the tarball.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit 33bab5091b5c16133d88269744f5305dfd4e4fcb
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Mar 28 17:46:57 2010 -0400
    
        config: install and distribute XI2proto.txt XIproto.txt
        
        It will now be installed in $docdir in addition
        to being distributed in the tarball.
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit 0746aed42e50d7ac10fd1545cf6b89a8bc809884
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Mon Dec 21 19:00:00 2009 -0500
    
        Add Red Had Copyright in the COPYING file.
        
        Refer to XI2.h and XI2proto.h
        
        Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
    
    commit e0ec5c81eef67a2b98396189b22b439953b616c0
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Nov 22 19:24:48 2009 -0500
    
        Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
        
        Now that the INSTALL file is generated.
        Allows running make maintainer-clean.
    
    commit 30c2e875941b1dcce06821fb0c5af6a15ca98d4e
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Mon Nov 16 11:13:30 2009 -0500
    
        README: file created or updated #24206
        
        Contains a set of URLs to freedesktop.org.
    
    commit 7ddcd9b428797e37c3d362b27975b157647aceeb
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Nov 15 19:45:26 2009 -0500
    
        Makefile.am: ChangeLog not required: EXTRA_DIST or *CLEANFILES #24432
        
        ChangeLog filename is known to Automake and requires no further
        coding in the makefile.
    
    commit ee09bc24cebbb18c2a2ed81336ab4ead600d2e94
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Nov 15 18:31:28 2009 -0500
    
        Makefile.am: INSTALL file is missing or incorrect #24206
        
        The standard GNU file on building/installing  tarball is copied
        using the XORG_INSTALL macro contained in XORG_DEFAULT_OPTIONS
        Add INSTALL target
    
    commit 2ee03af19d17c973072bbacaf7ab44a8fd8b64b1
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Nov 15 18:11:36 2009 -0500
    
        configure.ac: deploy the new XORG_DEFAULT_OPTIONS #24242
        
        This macro aggregate a number of existing macros that sets commmon
        X.Org components configuration options. It shields the configuration file from
        future changes.
    
    commit bf66af595c9b43e4086401a11c5a7b269857f039
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sun Nov 15 13:55:25 2009 -0500
    
        configure.ac: AM_MAINTAINER_MODE missing #24238
        
        This turns off maintainer mode build rules in tarballs.
        Works in conjunction with autogen.sh --enable-maintainer-mode
    
    commit 9ad88d954d544db29972144f5a778bb05d9b19ad
    Author: Gaetan Nadon <memsize@videotron.ca>
    Date:   Sat Nov 14 18:26:47 2009 -0500
    
        .gitignore: use common defaults with custom section # 24239
        
        Using common defaults will reduce errors and maintenance.
        Only the very small or inexistent custom section need periodic maintenance
        when the structure of the component changes. Do not edit defaults.
    
    commit 34a9ab1151fb7b35a371cc98a34a20993816f78a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Oct 2 11:38:12 2009 +1000
    
        inputproto 2.0
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0470d29c1e690f3784ca1a42f6d27aa322f9b37a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Oct 1 16:47:11 2009 +1000
    
        Add XIproto.txt
        
        This is the XI protocol specification document that used to be in xorg-docs.
        It's now moved here, and if it ever sees updates, the updates will only
        apply to here.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit bda99e7e5ac528aaa08664b21f0380db67bd2ac2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Oct 2 11:31:13 2009 +1000
    
        Require macros 1.3 for XORG_DEFAULT_OPTIONS
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 472309905a66245c9fd420ef64716ec630216323
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 21 14:25:51 2009 +1000
    
        inputproto 1.9.99.902 (RC 2)
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit f3f79c0642f33b6a39a0f7fdab2bcb06d9cab0f7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 25 10:04:01 2009 +1000
    
        Device cursors are deleted once the window or the device disappear.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit ae4588ff0c6e5cc7009e4ac78a3f953bc399bd84
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 21 14:24:23 2009 +1000
    
        XIWarpPointer needs to take FP1616 for positions.
        
        This was already in the spec but the protocol itself hadn't cought up with
        it.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 8eccc169c045fcf68b5a0974c49a8e6863894cf3
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 21 13:56:11 2009 +1000
    
        Replace four leftover INT16 with int16_t.
    
    commit 68cdaf8d26e133f700404bca93b18240aa6b8f86
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 21 13:55:52 2009 +1000
    
        XIQueryPointer only works on master pointers and floating slaves.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit d9aa0917b491e9d6ef887ac59fb7a01fb428fa62
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 18 15:05:09 2009 +1000
    
        XI2proto: XIChangeCursor request requires a master pointer.
        
        State that the server will return BadDevice in this case.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 4f9d8d49eca460b24daca2a28a2c644f7edc19bd
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 18 15:04:47 2009 +1000
    
        XI2proto.txt: typo fix
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 6719ae1ed024270f7fe1cb6bbee1f84cdaeba90c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Aug 7 10:39:46 2009 +1000
    
        Remove eventtype field from xXIRawEvent.
        
        With c455db2, raw events were split up into using multiple evtypes instead
        of a sub event type. The eventtype field itself however has not been removed
        and was unused by both the server and the library.
        
        Field converted into a padding field, wire layout stays the same.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1a7eb6de82bd61fc16f2a3f000d4d3b9d418dcd0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Aug 4 10:43:52 2009 +1000
    
        inputproto 1.9.99.901 (RC 1)
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit d8a1c1b1aba92e60d2fcad7cdf5abe77f3c9ae10
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Aug 5 14:52:45 2009 +1000
    
        Revert "XI2proto.txt: grabbing a slave does not detach it anymore."
        
        Detaching a slave device during an explicit grab makes sense from a UI
        perspective. It allows a client to get exclusive access to a device without
        that device's events also feeding into the respective master device.
        
        Thanks to Thomas Jaeger for his contribution.
        
        This reverts commit d0b1e55b876a29a7c820ec12d7b9cb5e081e1944.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b31776bb5b416ffa15235611954e68d386edf674
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jul 31 08:52:43 2009 +1000
    
        XI2proto.txt: document ClientPointer in more detail.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 221aed39ac45ce4bf3b28c7956bc00ea3c9dbf57
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 11:15:12 2009 +1000
    
        XI2proto.txt: don't put field names in quotes.
        
        This was done inconsistently anyway so get rid of it alltogether.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 5e76f4ca69fedab770280854ab238587eb5e10fb
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 10:12:06 2009 +1000
    
        XI2proto.txt: typo fixes and minor clarifications.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 26f244fadc188cc76f53c82c10bc3b308964f20c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 11:12:50 2009 +1000
    
        XI2proto.txt: sourceid on DeviceChanged is the device.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b877309713930f92f04e2485bc40e1b6730d7e77
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 11:12:26 2009 +1000
    
        XI2proto.txt: passive grabs can take XIAll{Master}Devices.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit d0b1e55b876a29a7c820ec12d7b9cb5e081e1944
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 10:53:08 2009 +1000
    
        XI2proto.txt: grabbing a slave does not detach it anymore.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 9f5d450fda41f936a8e12863aec544d69b30132f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 10:38:21 2009 +1000
    
        XIproto.txt: clarify that the ClientPointer is set, even if implicitly.
        
        It is indistinguishable for the client whether the the server chooses a
        ClientPointer or whether the CP was set through an XISetClientPointer
        request. The only thing that matters is that a device was actually assigned
        and will be used in the future.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 7b988fcae5135d064388084ef190966c3e38702c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 28 10:10:10 2009 +1000
    
        XI2proto.txt: padding bytes must be zero.
        
        Padding bytes zeroed out ensures that future versions of the XI2 protcol may
        use these padding bytes with a defined state. The server should ignore
        padding bytes depending on the client's version anyway but better safe than
        sorry.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 4b414dcdbb5641ea528ccc212584f9dac816b571
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 27 15:51:17 2009 +1000
    
        XI2proto.h: Remove special doxygen tags.
        
        The protocol header does not include enough documentation to make the use of
        doxygen really worthwile. Special doxygen tags beyond the very simple use of
        /** and /**< contribute too much to the noise and make it hard to actually
        read the code itself.
        
        While no extra tags are added now, a run of doxygen over XI2proto and XI.h
        still produces an acceptable output.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0542581edcef2795c613921e66736871b44408d7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 27 14:29:00 2009 +1000
    
        XI2proto.txt: Add some XI1 vs. XI2 interoperability descriptions.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 7cf46d64e0f2816f76ff3e23a77e5414a8625d10
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 27 14:20:38 2009 +1000
    
        XI2proto.txt: update list of XI2 event types.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0e7af09fcedc3f6f86306dbf2c683d065fc41f29
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jul 22 12:11:13 2009 +1000
    
        inputproto 1.9.99.15
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 006afb766ac1d01ad9d57035af56a5b48c6ec5d3
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 20 16:25:08 2009 +1000
    
        XI2: remove Keysym grabs, use Keycode grabs instead.
        
        Keysym grabs are tricky to get right for applications that are more
        complicated than demo applications. otoh, we know keycode grabs are working.
        So let's go with keycode grabs for now and add keysym grabs later when we've
        sorted out the details.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit aaefb1e12229cc7bed40f6aaec3641db840aa4f2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 13 16:05:07 2009 +1000
    
        inputproto 1.9.99.14
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1357361d6b2a72a3decd9307ca59cc7678ba3063
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 14 16:15:19 2009 +1000
    
        Add the enter/leave detail defines, same as the core protocol ones.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 2a3dc6c47145356a7c9e1cef59165a7ed2f2e9e2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 14 16:15:06 2009 +1000
    
        Formatting fix, s/tabs/spaces/
    
    commit 51244a1a4f7165d995c139ba1f0d03d8a1140015
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Mon Jul 13 16:49:33 2009 +1000
    
        Device{,Raw}Event: Add flags field.
        
        Add a flags member to DeviceEvent and DeviceKeyEvent; the only currently
        defined flag is KeyRepeat, indicating a repeat event (a la XKB detectable
        autorepeat), which is only valid for key events.
        
        Signed-off-by: Daniel Stone <daniel@fooishbar.org>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit c455db2c251770a729d2747e6f05d53c2563b428
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 13 15:30:50 2009 +1000
    
        XI2: Split up raw events into multiple event types.
        
        Instead of a single XI_RawEvent type with subtypes to represent the actual
        event, split up the event into XI_RawButtonPress, XI_RawButtonRelease, etc.
        This way clients can select for specific raw events only instead of all of
        them at once.
        
        Note that raw events may be selected on master devices too, the server will
        route them through master devices.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit f345258bf44e018e04643ccc6f02f5e40267d78c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 13 14:37:13 2009 +1000
    
        Fix XIMaskLen macro.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 6280b53cdbb750ef2363f5b55346a4271678ddef
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sun Jul 12 16:19:19 2009 +1000
    
        inputproto 1.9.99.13
    
    commit 2367e52404761ab14e0f908432f736cfc0813f8b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jun 23 21:01:27 2009 +1000
    
        Add effective group and modifiers to XIGroupInfo/XIModifierInfo.
        
        Effective modifiers are easy to calculate but let's send them down the wire
        nonetheless. Effective group is slightly more complicated since group
        wrapping must be taken into account - sending it down the wire simplifies
        clients.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 3f0067b45e66ef8db785b67a36f015fd4e6a9f6c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jun 18 00:29:44 2009 +1000
    
        XIDeviceChangedEvents may occur on master devices too.
        
        Prime example is a change in the number of buttons due to the availability
        of a new slave device.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b40f48b15e3362cc7b5aeb800b7de072ce20e4aa
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jun 17 09:09:56 2009 +1000
    
        inputproto 1.9.99.12
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit a6edd59c440cae9cd8ac775bb4d67ab433f2aae3
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jun 17 08:53:26 2009 +1000
    
        Use the term 'labels' to refer to button and axes labels.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b0f7e24d210cb6d0a1c47cae39b54e56a5e996d8
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jun 16 13:14:47 2009 +1000
    
        Include valuator value in XIValuatorClasses
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit b2fb9f81a2a7af8656309420facd58ab610d5da1
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sun Jun 14 08:23:56 2009 +1000
    
        Include button state in XIButtonClasses.
        
        Without including the state in a button class, it is impossible to know the
        state of a device until this device has pressed or released another button
        (and thus sends an event).
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit db98b817355ed12609cff077c4a12948ac41f88d
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sun Jun 7 17:51:04 2009 +1000
    
        Add a source field to the class information.
        
        In some cases it is required to know the source device of a particular
        device class. In the future we might also do lazy copying of classes,
        meaning that for a given device, each class may come from a different
        source. Hence the source id should be included for each class.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 48cf9a56066c4b5a2136310da3cd6846dcf3b607
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jun 10 15:13:03 2009 +1000
    
        Add note that bumping XI_LASTEVENT requires changes to the server.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit bac0e02889392534138e8b98e516a0ea3c76847a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jun 10 15:12:39 2009 +1000
    
        Ensure XIAnyModifier is an unsigned int.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1d59de593c5aac8e109fcb3c1173d4dc14742dee
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jun 12 15:50:26 2009 +1000
    
        XISelectEventsReq should use win (not window), like all requests.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit f711dfae6872371ec41aeeecda9570a57d0a746c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Jun 12 15:50:07 2009 +1000
    
        XI2proto: document XSetClientPointer behaviour on None window, etc.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 17a6ad094266cc14efb75cca36de0b8adff9d35b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 8 15:40:21 2009 +1000
    
        inputproto 1.9.99.11
    
    commit 03309cfbc19fc16b5ae25f8511b3ef28fcd66818
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 8 14:23:27 2009 +1000
    
        xXIHierarchyEvent should list num_info, not num_devices.
        
        The structures following the request are referred to as "info", having a
        name of "num_devices" is misleading as the number of info structs does not
        always reflect the number of devices (e.g. if a device got removed).
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 751f2d6c0fa88a6bfc380b57d72ae41ec790249d
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 8 13:31:28 2009 +1000
    
        Rename XICreateMaster to XIAddMaster for consistency.
        
        We use add/remove for slave devices, add/remove for the hierarchy changed
        flags, so let's use add/remove to create a new device as well.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 44f2419e56b006b8f182ea5746e9b6eef205ff37
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 8 12:35:29 2009 +1000
    
        Update comment referring to an old naming scheme.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 6e20d1fc2517e68b17f9da2e94f78e9d64a8c408
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 8 09:51:53 2009 +1000
    
        Document BadValue error for XIHierarchyEvents selection on devices.
        
        These events may only be selected on the XIAllDevices fake device.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 56da196866d8c883b9b25b04dd584fbcb159ffd3
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Jun 4 13:35:42 2009 +1000
    
        XIQueryVersion may return a BadValue for major_version less than 2.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0d75208a554577d652ca9e2856a4f12b0d720a1f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jun 1 09:12:42 2009 +1000
    
        Move the XI2 index into versions[] over to XI2.h
    
    commit 8aff0836afaef4397f9df273cc90edeca1ab9641
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri May 29 13:25:32 2009 +1000
    
        Specify modifier interactions with attached slave devices on passive grabs.
    
    commit e102c504ec58e6bc4620e7cd01ea34de665e5fd9
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed May 27 14:12:58 2009 +1000
    
        inputproto 1.9.99.10
    
    commit 6b61bef5da91ca24d1bfcf9d314b8b8587c3e4fc
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu May 28 08:20:37 2009 +1000
    
        Mirror the core enter/focus modes and add the passive grab mode.
        
        If an enter/focus grabs activates (or deactivates), send an extra set of
        enter/focus in (or leave/focus out) events to the grabbing client with mode
        XIPassiveGrabNotify.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 1b2dc24bf51a325ea3fafb46768467675b00be52
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon May 25 15:48:25 2009 +1000
    
        Add Enter/FocusIn passive grabs.
        
        Same behaviour as button/keysym grabs but triggered on enter/leave and
        focus in/out events.
    
    commit d0c6633f7bc2519c0b6c662a1f39a8ce56ab768a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed May 27 13:11:49 2009 +1000
    
        XI2proto.txt: remove one more keycode mentioning, fix typo
    
    commit 31f492bf9471fc593275fb95f97312db21439641
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon May 25 12:14:12 2009 +1000
    
        Add XIGetSelectedEvents request and reply.
        
        Counterpart to XISelectEvents, used to retrieve event masks from the server.
    
    commit f065f6c12aa5c2e79f1af38908e86d20a2efdc86
    Author: Benjamin Close <Benjamin.Close@clearchain.com>
    Date:   Tue May 19 11:27:03 2009 +1000
    
        XI2proto.h: fix two comments referring to the old naming scheme.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 3aca2d6ba53c8ddf5c40ae4b1411e50134b404a5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri May 15 20:14:16 2009 +1000
    
        inputproto 1.9.99.9
    
    commit 8c2872367765170c37f829d635c97dc3d68861b7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat May 16 11:49:21 2009 +1000
    
        Document naming conventions for XI2proto.h.
    
    commit b32e5830c0acbdba4798fad107bf8404c978753c
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat May 16 11:46:44 2009 +1000
    
        XI2proto: define Window, Cursor, Atom and Time as uint32_t.
        
        Since we're using stdint in the rest of the file, might as well ignore
        CARD32 here.
    
    commit f4f09d40e0fd94d267b280f2a82385dca1141347
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat May 16 11:31:03 2009 +1000
    
        XI2.h: remove XI2Mask, add XISetMask and friends.
        
        XISetMask, XIClearMask, XIMaskIsSet serve to set, clear or check a bit in
        the provided array.
        XIMaskLen is a macro to get the minimum length of a mask for a given event
        type.
        
        They are expected to be common ways to deal with event masks, i.e. clients
        will do:
        
        unsigned char mask[XIMaskLen(XI_ButtonRelease)] = {0};
        XISetMask(mask, XI_ButtonPress)
        XISetMask(mask, XI_ButtonRelease)
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 0ae6581bc62b3b734c84b12e9a92d945d3e98aa7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat May 16 11:25:49 2009 +1000
    
        Add XIAnyButton and XIAnyKeysym.
    
    commit 4cc6992b08b6c7aed0d1242e3382fb53d51a0fe2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu May 14 12:09:38 2009 +1000
    
        XIQueryPointer needs to include sensible button/modifier state.
        
        This includes shuffling the xXIModifierInfo and xXIGroupInfo structs to the
        common structs section.
    
    commit d041f30777c09f07ac79fface61bfbfa654306f2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu May 14 10:29:49 2009 +1000
    
        Add an introduction to XI2proto.txt
    
    commit e1138da90235797248f38d7f613566fb8418c396
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue May 12 19:24:31 2009 +1000
    
        XI2proto.txt: remove more mentioning of keycode grabs
    
    commit 7aba20ed4c404b80112a0bb28220a2c646f319e4
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue May 12 16:51:05 2009 +1000
    
        Remove superfluous "Device" from protocol requests and events.
        
        Anything with prefix XI is per-device anyway.
    
    commit 12635cbd4aea0ba3b38b96682d63bb71ba8c737e
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue May 12 16:14:01 2009 +1000
    
        Add per-device flags to XIDeviceHierarchyEvents
    
    commit 886d2aceb77070292e984ed2b25e31ac9c82aba7
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue May 12 13:45:48 2009 +1000
    
        Define Cursor as CARD32.
        
        Reported-by: Benjamin Close <benjamin.close@clearchain.com>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 32277164bcff6b18a498f12886828187e1f96249
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon May 11 14:35:35 2009 +1000
    
        XI2proto.h: doxygen-ify
    
    commit e9dfa4015520abd49779e96e7d54da763a54484b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon May 11 13:46:53 2009 +1000
    
        XI2proto.h: s/uint32_t/Time/ where appropriate
    
    commit a47a2b50845499e3f9144739db5644952faf8ea2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu May 7 16:19:47 2009 +1000
    
        Prefix all XI2 constants with "XI" -> inputproto 1.99.9.8
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 2edc35c032c2792d9528a396f596d466d4f10764
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed May 6 16:33:34 2009 +1000
    
        Add XI2 property requests.
        
        Basically the same as XI 1.5, save the 16 bit deviceids.
    
    commit 504b480c946fe4c4a96500ef8c5da100b787ab32
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat Apr 25 11:08:21 2009 +1000
    
        XI2: add passive grabs.
        
        Most notably XI2 provides keysym grabs instead of keycode grabs.
    
    commit 5d60550fdeb375a88ac9da42bcad4ee69b0df64a
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sat Apr 25 10:43:43 2009 +1000
    
        XI2 spec: Add some more Grab/Ungrab/AllowEvents documentation.
    
    commit 6d28cb22ada7a1abb6ab11863c82c9834d1a4b00
    Author: Benjamin Close <Benjamin.Close@clearchain.com>
    Date:   Wed Apr 22 13:10:50 2009 +0930
    
        Define the Cursor datasize correctly
        
        On 64 bit machines, without Cursor defined Xlib would allocate 64 bits
        rather than 32 to any structs using Cursor. This led to data not
        correctly being available on the wire hence the Xserver would do strange
        things. We hence define Cursor to what it should be and make sure
        we undefine it after we've finished to users of XIproto.h aren't affected
        
        Fix-by: Peter Hutterer <peter.hutterer@who-t.net>
        Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 589dc6ffa509c1c7da2d94dc89b2246c3dfdc81d
    Author: Paul "TBBle" Hampson <Paul.Hampson@Pobox.com>
    Date:   Wed Apr 22 09:00:14 2009 +1000
    
        Fix typo in XI2proto.txt
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 3380ae0ac0220c7f8fea9df855113819b472a233
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Apr 16 11:37:20 2009 +1000
    
        Add XIAllowEvents.
        
        Basically the same as the core protocol AllowEvents.
    
    commit 3c273d7145ed5f53b54d2812ad2ac8430d449555
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sun Apr 19 21:33:42 2009 +1000
    
        Change FP1616 into a single int32_t.
    
    commit 8914a9a2a99e334f66d6040d05b3d5f5b603780f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 10 17:31:05 2009 +1000
    
        Add GrabDevice and UngrabDevice XI2 requests.
    
    commit 1956df7e45a49464dee2d7beff36f38ea00e9cb8
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 10 14:56:20 2009 +1000
    
        Revert "Add major/minor version as supported by client to GetExtensionVersionReq."
        
        This reverts commit f6e41306f76de966884d4b72c5fb5e5d6d534ce4.
        Sending the supported version hidden in another request is potentially
        dangerous, so let's not do it.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 55ee1f97d446403b9c2ed2e3c321afa4d683c93f
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 10 14:35:00 2009 +1000
    
        XI2proto.txt: fix typo
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit d5105dc8516dd89cad0cd841081ff85d0a672bae
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 10 14:17:51 2009 +1000
    
        We don't need to define KeyCode and Mask.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 75daa0db2c87d065e80afdf248965f34f7073cd5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Fri Apr 10 14:17:02 2009 +1000
    
        Undef Window, Time, etc. after usage again to avoid pollution.
        
        Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
    
    commit 6c9785ea2581924fc748f61160a2faa4ab8eded0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 3 15:15:50 2009 +1000
    
        Remove IsFloating - we don't need this in XI 1.x anymore.
    
    commit 069880638b1c2af821c6d84fde4119668c533063
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 3 15:13:22 2009 +1000
    
        Move XI_2_Major/Minor to XI2.h
    
    commit 2570457174fb951d3f5f725f87e8f7f45059158b
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 3 16:13:05 2009 +1000
    
        Move AttachToMaster, Floating to XI2.h
    
    commit 1d933800acfa31f0a8f014224c1708f0076f3db0
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 3 15:58:24 2009 +1000
    
        Move CH_* constants to xi2
    
    commit 5aa07308a10315f9305cd9637c71f98432c75ecf
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 4 14:33:57 2009 +1000
    
        Remove XI2 requests from XIproto.h
        
        All requests been moved to XI2proto.h. Only ExtendedGrabDevice is gone for
        good.
    
    commit 05f997e68921a1443728a9c58050eb82b73eaea8
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Feb 26 15:22:55 2009 +1000
    
        Bump to 1.9.99.7
    
    commit 7a73c3c64b1affa946deb66dd22042ee12fd747d
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Mar 12 15:43:26 2009 +1000
    
        Add XISetDeviceFocus and XIGetDeviceFocus requests
    
    commit 0ca1de737aa5cd714a4df3a45422dce415f9df55
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 11 16:32:06 2009 +1000
    
        Add focus events
    
    commit da74983b7d18ad06fe828040072d4a985ce4d448
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 11 13:32:09 2009 +1000
    
        Add buttons + modifier/group information to enter/leave events.
    
    commit c9ebfba4a128f0d0eda920a02af013b795adfec5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Mar 11 12:30:16 2009 +1000
    
        Define FP1616 as one int16_t, one uint16_t.
    
    commit 2339bc5b0eea89e676ac58a38ac5eb6a8ae6e6f9
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 10 15:42:28 2009 +1000
    
        ValuatorInfo moved to FP3232
    
    commit cac1bcbf6d544f29c3379bc0462bb237e8ff8399
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 10 15:35:04 2009 +1000
    
        Add FP3232 typedef.
    
    commit fc7f67959ad72c76e852827963d6a42b7d533b89
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Mar 10 12:26:18 2009 +1000
    
        XI2: remove button state from the RawEvent.
        
        A RawEvent is supposed to represent the state posted by the device. If a
        client needs button state, then the client must keep track of it.
    
    commit d2ba9af0517f54fb58358e41859f5e4ead9b64f2
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Feb 26 15:10:28 2009 +1000
    
        Split CH_ChangeAttachment into CH_AttachSlave and CH_DetachSlave
        
        CH_ChangeAttachment is still there, but won't be for long.
    
    commit 69f5b8a3ff8258cc6d50cca7d5382b0fe9fed893
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Feb 5 15:57:56 2009 +1000
    
        Add XI2.h and XI2proto.h, and a few required defines to XI.h
    
    commit 27dc5a8313d48a78a628563132142a97f7a47843
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Thu Feb 5 14:18:28 2009 +1000
    
        Add XI2 protocol specification document.
    
    commit f39d3c8d6035fe65ad788987e291b99ad22448dd
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Feb 4 15:21:55 2009 +1000
    
        Whitespace cleanups.
        
        Yep. Slow day today.
    
    commit c2d426f232f214f24fba2e30766c94e643716a72
    Author: Paulo Cesar Pereira de Andrade <pcpa@mandriva.com.br>
    Date:   Tue Jan 27 20:06:28 2009 -0200
    
        Janitor: Correct make distcheck and dont distribute autogen.sh
    
    commit 7203036522ba9d4b224d282d6afc2d0b947711ee
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Oct 31 16:33:25 2008 +1030
    
        Bump to 1.9.99.6.
    
    commit f8064629496c6061bedb7a99b788fb9d3a170f11
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Oct 31 17:53:39 2008 +1030
    
        PropertyNotify, move deviceid back to last byte.
        
        This way, it can be type-cast to deviceKeyButtonPointer to extract the
        deviceid, which is (aside from time) the only thing it has in common with
        those anyway.
    
    commit 90a86701e3b9feafa05f44649a8314f06285fab5
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Wed Oct 8 21:39:20 2008 +1030
    
        Remove window access protocol requests.
        
        This is a bad idea. It didn't provide security and you can get the same
        functionality as you did with normal event registration.
    
    commit 36c8a6f3faf56a8f8ca31455812c9132b379b1b3
    Author: Julien Cristau <jcristau@jazzy.liafa.jussieu.fr>
    Date:   Wed Oct 15 10:33:51 2008 +0200
    
        Undef Atom after we're done so we don't pollute users of XIproto.h
    
    commit c919917e375aefaf473570c1b25b3c22231e858d
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Wed Oct 15 10:34:21 2008 +1030
    
        Make sure Atoms are defined as CARD32.
    
    commit 2166b77ea60bd9cd87f1311a2e7d461db071cb07
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Sep 26 10:11:04 2008 +0930
    
        Bump to 1.9.99.5.
    
    commit 93c1ea035b46614fd907e33303c6a876d32e2c78
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Sep 26 09:37:48 2008 +0930
    
        Remove default properties (XI_PROP_MODE, XI_PROP_ENABLED)
        
        These should be defined by the server, not the protocol.
    
    commit 18ef04f8a2026cca5d2d2b796ec2ea1c949bad36
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Thu Sep 18 15:00:54 2008 +0930
    
        Remove Configure/QueryDeviceProperty.
    
    commit c9454a8e84b2dce54bb346ff1aafb32e3c0ac5b9
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Thu Sep 18 16:28:09 2008 +0930
    
        Add XI_JOYSTICK type.
    
    commit 20a0c8433ee50ecef1dfdb218674c7729bbacb99
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Thu Sep 18 15:00:01 2008 +0930
    
        Don't include Xmd.h.
    
    commit 3e7b663e7d5a40a115eba3cabfc173549ff89357
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Aug 15 15:01:16 2008 +0930
    
        inputproto 1.9.99.4
        
        Backported device properties.
    
    commit fabe087cebb11c6a2600e57c6f7a52fda2efea29
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Aug 15 14:50:23 2008 +0930
    
        Protect against C++ includes.
    
    commit c2d47b04c55cf72aef6c13a9e2cc4b41abfca673
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Fri Aug 15 14:21:24 2008 +0930
    
        Remove RCS tags, typo fix.
    
    commit 7c9620d8232e5c05115746055a832363a528ac2d
    Author: Peter Hutterer <peter.hutterer@redhat.com>
    Date:   Wed Aug 13 10:00:12 2008 +0930
    
        Back out Device Properties from XI 2, push into XI 1.5.
    
    commit 54465c743354dd138f4ccacc196198e36c2ecdba
    Author: Alan Hourihane <alanh@tungstengraphics.com>
    Date:   Tue Jul 29 14:15:04 2008 +0100
    
        bump to 1.99.9.3
    
    commit 0daf8328cfa90b038753fc409c5eb05ba3fac6d5
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Tue Jul 29 08:58:53 2008 +0930
    
        Add DeviceControlChanged define.
        
        This value is used for the devchange field in the DevicePresenceNotify event
        when a device's control has been modified.
    
    commit 0d300ce64c277f4f7c7fe5fd6dca1ed768880af1
    Author: Alan Hourihane <alanh@tungstengraphics.com>
    Date:   Mon Jul 21 10:33:47 2008 +0100
    
        Bump to 1.9.99.2 for inputproto
    
    commit fe74239e93e6562ba6c268b50d6cfb36d2426bef
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Sun Jul 13 20:49:51 2008 +0930
    
        Add #defines for XI_PROP_ENABLED, XI_PROP_MODE
        
        These two props are expected to be supported by the server.
    
    commit 5f686651087ac9d1a15b4d8aa631f2d7f2096871
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Wed Jul 9 18:28:26 2008 +0930
    
        Set IEVENTS back to 18, got set to 8 inadvertantly.
    
    commit bbbe35b3513510afb524e02b8227826dbd5ea87e
    Author: Peter Hutterer <peter.hutterer@who-t.net>
    Date:   Mon Jul 7 15:38:50 2008 +0930
    
        Add XI device property requests and replies.
        
        New requests:
        ListDeviceProperties ... list all props of a device
        QueryDeviceProperty  ... query meta-information about a property
        ChangeDeviceProperty ... change the content of a property
        DeleteDeviceProperty ... delete a property
        GetDeviceProperty    ... retrieve a property
        
        New event:
        DevicePropertyChangedNotify ... the given property on the device has changed
    
    commit 9f1f3ef7a36fddacf30ecf867ddad90253103b6a
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed May 28 17:13:49 2008 +0930
    
        Bump to 1.9.99.1.
    
    commit 834c9ba8b4a1746a5d87d793f7c40bb882712656
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon May 12 17:30:30 2008 +0930
    
        Remove a leftover typedef, the code that requires it has since been removed.
        
        Was part of the FakeDeviceData request, this request does not exist anymore.
    
    commit c6df1392e52b5edf3f25e0198c06a3a1ae3c0356
    Merge: f6e4130 8525689
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon May 12 17:30:15 2008 +0930
    
        Merge branch 'master' into mpx
        
        Conflicts:
        
        	XI.h
    
    commit f6e41306f76de966884d4b72c5fb5e5d6d534ce4
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Sat Apr 26 10:03:19 2008 +0930
    
        Add major/minor version as supported by client to GetExtensionVersionReq.
        
        This sort-of breaks old clients. Behaviour to be assumed is that if nbytes is
        0, major/minorVersion is set and specifies the version as supported by the
        client.
        If nbytes is non-zero, the request is trailed by the extension name (INAME)
        and major/minorVersion is undefined. This is the behaviour of pre-MPX clients.
        
        And then there may be clients who found that no other extension uses this
        request and supplying a name wasn't actually necessary since it was XI anyway.
        These clients will break. Tough luck. Read the man pages next time.
    
    commit 746f61a86d1fd37216508a3f913bf2a1d1287478
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Apr 25 18:09:32 2008 +0930
    
        Remove XInput.h. This file is now part of libXi.
        
        XInput.h only belongs to libXi and is should not be part of the protocol
        headers. For future revisions of this file refer to
        git://anongit.freedesktop.org/git/xorg/lib/libXi
    
    commit b762dad06c33a9bdcdedecb9a20d218aa38d05d6
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Apr 25 10:34:01 2008 +0930
    
        Add #define IREQUESTS 45. Specifies the number of requests in XI.
    
    commit 852568991b251e9366da167f1b746a0a1db6adf0
    Author: Adam Jackson <ajax@redhat.com>
    Date:   Mon Mar 10 09:31:51 2008 -0400
    
        Typo fix.
    
    commit b5cbe2d93f6c0129b8f29da97778f6d1b15c38f9
    Author: Adam Jackson <ajax@redhat.com>
    Date:   Mon Mar 10 09:08:21 2008 -0400
    
        C sucks: define XEventClass in terms of unsigned int, not CARD32.
        
        Apparently pulling in Xmd.h here breaks qt, since they both define an
        INT32 type (and incompatible ones even, since Xmd's is unsigned long on
        ILP32 because whoever wrote Xmd.h is a C novice).
    
    commit 3edc1bf23b07ea47d7e1e32047e15c67333c663e
    Author: Adam Jackson <ajax@redhat.com>
    Date:   Wed Mar 5 22:06:19 2008 -0500
    
        inputproto 1.4.3
    
    commit 83fe5a31cbba502482ee1f2e720aaed8f4fa86b8
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Mar 4 18:10:00 2008 +1030
    
        Add deviceid to QueryDevicePointer reply.
        
        Doesn't hurt, we have padding left over anyway.
    
    commit 52e366d845163cdc1ffa8955d36914cd6b5f21f9
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Feb 25 16:51:31 2008 +1030
    
        Squash opcode range for MPX XI requests.
        
        This removes the opcode holes that were left by the excessive request removal
        of the last weeks.
    
    commit 66ba434bc5c5fd343e558b758a7e0d61dcebb1c4
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Feb 25 16:45:16 2008 +1030
    
        Remove GetPairedPointer, paired device can be found through ListInputDevices.
    
    commit 1f37b09c99df0890fbf347f3767934cdd4e586c2
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Feb 25 16:28:05 2008 +1030
    
        Remove "ungrab" from ExtendedGrabDevice request, remove XUngrabExtDevice().
        
        That's what UngrabDevice is for, it does the same anyway.
    
    commit 1f6d53f553e580757d4c7391838a44b659812ab0
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Feb 18 17:21:37 2008 +1030
    
        Add WindowAccessAllowAll constant.
        
        Not surprisingly the inverse of DenyAll.
    
    commit b512f47795bd125f6b04806d8a831f888febb67d
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 14 18:25:24 2008 +1030
    
        Change XChangeDeviceHieararchy API.
        
        Single-pointer to changes is enough since we have a union now.
        Provide array first, then number of elements. This at least gives us
        consistency within the MPX-related stuff. The rest of Xlib can't seem to make
        its mind up about that.
    
    commit 330cfbd0ca6e6d1557e08ab0c555fe87acc7be29
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 14 16:33:03 2008 +1030
    
        Make XAnyDeviceHierarchyChangeInfo a union of the possible types.
        
        Kinda the same as the XEvent union.
        
        Some whitespace fixes too.
    
    commit d5245e8b85deec6f76bec2c9599da59516e50cca
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 14 09:17:34 2008 +1030
    
        Whitespace fixing and sz_RegisterPairedClient removal.
    
    commit 3c24865ad98557a5bc3e12c954eefaffff01bf36
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 14 09:15:11 2008 +1030
    
        Remove GrabAccessControl and FakeDeviceData.
        
        Both aren't thought out enough to justify their inclusion in the first version
        of MPX.
    
    commit 6a91ee1bd1d4751d09f2e4aa832913bc66ae4602
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Feb 12 19:19:58 2008 +1030
    
        Remove RawDeviceEvent - for now anyway.
        
        Wasn't quite as thought-out as it should be. Throwing it out for now, to get
        the rest of MPX more stable.
    
    commit 1d097c26264b657689d74f3f0a77cd1aa4f7e576
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Feb 12 19:17:51 2008 +1030
    
        Remove pairingChangedNotify event.
        
        I swear I already removed that before... Anyway, we don't need it anymore,
        since pairings can't be changed anyway. Hooray for the device hierarchy.
    
    commit be9e285258b8ea90628bbb5ae65bf74bdc59338b
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Feb 12 15:04:24 2008 +1030
    
        Remove "shared" field from QueryDevicePointer.
        
        If it's a slave device, it's shared, if it's a master device it has its own
        cursor. No need for this field.
    
    commit bd20f0ebd5e71fd03b3140960c3960bc50bd4273
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed Jan 23 15:47:56 2008 +1030
    
        Add a device id to XiSelectEvent.
    
    commit 096b20bf5492d248b5c8ff0c1c28e221d59db724
    Author: Jesse Barnes <jesse.barnes@intel.com>
    Date:   Mon Jan 21 15:28:49 2008 -0800
    
        Use Xmd.h instead of X.h to pull in CARD32 definition
        
        On 64 bit hosts, CARD32 may be undefined unless we use Xmd.h to define it for
        us.  Apparently X.h is no longer sufficient.
    
    commit 640a97d321cdc5fd2f34265cba86da40463f8e48
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Dec 18 15:47:01 2007 +1030
    
        Move deviceid in XDeviceCrossingEvent up to follow window.
        
        This makes XDeviceCrossingEvents in line with the other events who have the
        same initial ordering of things.
    
    commit 9359e625787761e6b3df15f29bbf842c67a9516d
    Author: James Cloos <cloos@jhcloos.com>
    Date:   Thu Dec 6 16:39:02 2007 -0500
    
        Replace static ChangeLog with dist-hook to generate from git log
    
    commit 92f083437f3129bb67cd4599ad776b8b691f0b56
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Nov 13 17:22:21 2007 +1030
    
        Remove RegisterPairingClient, deprecated with the device hierarchy now.
    
    commit 14e6e7bad06a560ec943654b94e05d4293709f2c
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Nov 13 11:29:06 2007 +1030
    
        Add DeviceClassesChangedEvent.
    
    commit 685a2dd32736956f5175afb9bc5773c829725fea
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Nov 8 17:26:35 2007 +1030
    
        Add DeviceHierarchyChangedEvent.
        
        Uses same event type as the now removed PointerKeyboardPairingChangedNotify.
        
        (removing the RandomStringEvent too, should have been gone a while ago)
    
    commit 6037b37a5bf03f0b38db6a83fe1bc48551b8363c
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Oct 19 10:22:51 2007 +0930
    
        Add XChangeDeviceHierarchy and its components.
    
    commit 52e2f24b3a21741d2fb0614642fd5b12b72c0d3d
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Oct 18 12:23:34 2007 +0930
    
        Create new XAttachInfo class for attachment info (slave devices).
        
        Thanks to XLibs design we can't just change XDeviceInfo without breaking the
        ABI. So here's a new class that isn't actually a class on the wire.
    
    commit 3c5555544e06f1be70e6981446e2a92dc1e2aecd
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Oct 18 10:39:40 2007 +0930
    
        Add XI version 2 defines.
    
    commit 6a0ffc2f461bd41a223732551e0ea1f05c293028
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed Oct 17 12:38:38 2007 +0930
    
        xDeviceInfo: add "attached" field (replace previous padding).
        
        If use is set to IsXExtensionPointer/Keyboard/Devices, attached indicates the
        device ID of the master device it is attached to. If the device is floating,
        attached is set to IsFloating.
    
    commit 4b22047f347d8fd65a36b2fc90e1a87dff8e93e3
    Author: Eamon Walsh <ewalsh@tycho.nsa.gov>
    Date:   Thu Sep 27 12:27:19 2007 -0400
    
        XI.h needs X.h for CARD32 on 64-bit systems.
    
    commit f033750780b74d72056da93fd9a91140a978891b
    Merge: 369dd28 96b0c13
    Author: James Cloos <cloos@jhcloos.com>
    Date:   Mon Sep 3 06:17:20 2007 -0400
    
        Merge branch 'master' of ssh://git.freedesktop.org/git/xorg/proto/inputproto
    
    commit 369dd283cfcf006e2cfe3496ebc5157839a3d04e
    Author: James Cloos <cloos@jhcloos.com>
    Date:   Mon Sep 3 05:54:06 2007 -0400
    
        Add *~ to .gitignore to skip patch/emacs droppings
    
    commit 96b0c13a5a689b3a6dbc4249ca4ef364f778c003
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Aug 31 17:58:27 2007 +0930
    
        Bump to 1.4.2.1
        
        No source changes, the 1.4.2 tarball had a busted configure script.
    
    commit 0e9f8468ba15a55ddba7fb8c263a80091e9decde
    Author: Paulo Ricardo Zanoni <prz05@c3sl.ufpr.br>
    Date:   Tue Jul 10 10:16:06 2007 +0930
    
        Change some calls to use XID* instead of char* for device id lists.
    
    commit 5e4ff6bf4590d856966f151529d27be0eb070804
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu May 17 20:19:29 2007 +0930
    
        Move deviceid around in deviceEnterNotify, make room for detail field.
    
    commit 3d164140845c2ff65d84b56977b1722e95882f1c
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu May 17 20:19:02 2007 +0930
    
        Add event_type to RawDeviceEvent to store matching core event type.
    
    commit 42a6b9b643d22ca8df64757cf497d2c7ac2dee65
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon May 14 18:03:53 2007 +0930
    
        Add ExtendedGrabRequest and the matching reply.
    
    commit ccbe2e63123c58041a3c32ae6a21b05bd8c72b04
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed May 2 18:19:11 2007 +0930
    
        Add xFakeDeviceDataReq
    
    commit b12514254cb1d2b91381b59251440b22e36052fb
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed May 2 09:43:48 2007 +0930
    
        Providing a device id for a RawDeviceEvent may not be a bad idea.
    
    commit ce7bbfb7e0ecaf977c4ec8e760c634cebf8ac167
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue May 1 22:31:09 2007 +0930
    
        Add XGE support and event types for RawDeviceEvent and PairingChanged event.
    
    commit 02c50062d357bc5d43ab4440eb195a33df0ec8b9
    Merge: f0baffd 310a93f
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Apr 27 14:43:43 2007 +0930
    
        Merge branch 'master' into mpx
    
    commit 310a93f8e194aa070b0f1d40c8fd5ae941908dbe
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Apr 26 11:06:18 2007 +0930
    
        bump to 1.4.2
    
    commit c9bed7d4750c314002c16430a4dd75f95cc2f78d
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Apr 24 22:53:27 2007 +0930
    
        Add flags to be used for DevicePrensence's devchange field.
    
    commit f0baffd3a04dfe8a09b59667e5dcaa0216a94e65
    Merge: a928365 c608d82
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Apr 2 16:42:46 2007 +0930
    
        Merge branch 'master' into mpx
    
    commit a928365b91a2e25d02291844e430db9a9a62673d
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Mar 22 21:14:11 2007 +1030
    
        Change XSetClientPointer API to use an XDevice instead of deviceid.
    
    commit 4ed9be75a5d3d75782351269481db5856f7e3f60
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Mar 22 17:27:32 2007 +1030
    
        add GetClientPointer request and reply.
        add GetPairedPointer request and reply.
        move declaration of _XiGetDevicePresenceNotifyEvent out of the macro and wrap
        it between extern "C". Otherwise C++ code won't be able to find it.
    
    commit 9dd8dcfa7e084d94cf3b7429eae65c93416159e3
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Mar 9 15:51:07 2007 +1030
    
        add SetClientPointer request.
        fix typos and wrong names for access function declarations.
    
    commit de6f3fcaffe204e8f7c811f8a1599e9ed0999f9c
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 22 20:03:36 2007 +1030
    
        add access control requests.
        fix wrong field lengths for RegisterPairing request and reply.
    
    commit bb5c144c53fcb03c56b247b439915d72ad284856
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed Feb 21 10:03:24 2007 +1030
    
        add xRegisterPairingClient request and reply
    
    commit c608d82c6b5b87ddc8d14862f528bdd69f5f5b72
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Thu Feb 15 16:33:07 2007 +0200
    
        bump to 1.4.1
    
    commit 157a7984f1d2e2630191b6d392bc15975a3786db
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Fri Feb 9 11:37:54 2007 +1030
    
        add missing XWarpDevicePointer declaration
    
    commit 025e4cdde8267d678dc5105e11c7cd66e2ad89b5
    Merge: 328cd82 ad2edb6
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 8 10:55:55 2007 +1030
    
        Merge branch 'master'
    
    commit 328cd827e89424292ca020d0b828154f8e4f2c17
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Thu Feb 8 10:54:34 2007 +1030
    
        add flags field to deviceEnterNotify struct
        add same_screen, focus to XDeviceCrossingEvent struct
    
    commit 4ab02ccbdad477a0d7a0bee79c947f50826f1a36
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Jan 29 18:18:56 2007 +1030
    
        add ChangePointerKeyboardPairing request
        add pairingChangedNotify event
    
    commit b50c4424020d1b2b641ce15ee3ffea41a287a160
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed Jan 10 14:53:01 2007 +1030
    
        add deviceEnterNotify event, DeviceEnterNotify, DeviceLeaveNotify support
        add MPX Major/Minor version numbers
    
    commit ad2edb61ffd8baf87b9ab249aa36b0c04a765f79
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Tue Jan 9 13:32:39 2007 +1030
    
        Fix typo in DevicePresence() macro
    
    commit 3b84ea85ace4dc9fe1caf7d7c45c0c51ee35b4b2
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Mon Jan 8 12:33:41 2007 +1030
    
        	add ChangeDeviceCursor request
    
    commit cc055ae804f4dfd8b09b8993673b4670e5cf61ce
    Author: Peter Hutterer <peter@cs.unisa.edu.au>
    Date:   Wed Dec 20 13:36:06 2006 +1030
    
                add QueryDevicePointer request + reply
                add WarpDevicePointer request
    
    commit a0be30da79e35e7d503c6eeb9021c2f63beb2176
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Sun Oct 22 16:40:11 2006 +0300
    
        DeviceAbs{Area,Calib}: properly align 32-bit types
        Decorate CARD32s and INT32s with B32.
    
    commit b1b3dbfd9b00d47c84c213bc6b7d61c5e8c80466
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Sun Oct 22 16:30:56 2006 +0300
    
        DevicePresenceNotify: add deviceid field, with explanation
        Add deviceid field, and an explanation of same in XInput.h.
        deviceid is only used if a specific device changed, and control
        is non-zero if a specific control on that device changed.
    
    commit 06ffd1e6b600d4e3f55ce7da69448a284ff5dac6
    Author: Zephaniah E. Hull <warp@agamemnon.b5>
    Date:   Sat Oct 21 03:58:53 2006 -0400
    
        DEVICE_TOUCHPAD -> DEVICE_ABS_CALIB.
        
        As it's really calibration for absolute devices, add some stuff.
        
        DEVICE_ABS_AREA
        
        Defines the area of the screen that an absolute device covers if it is sending
        core events.
    
    commit 1fab95863efc2bbf9a5b836b3de31da4a956b4bd
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Fri Oct 20 00:33:13 2006 +0300
    
        add DEVICE_ENABLE control, add core indication
        Add DEVICE_ENABLE control, which allows specific devices to be
        enabled or disabled at runtime.
        Add 'iscore' flag to DEVICE_CORE, which indicates whether or not the
        device is a virtual core device.
    
    commit 926251a486b57197d735a426887acad6fdfd7dc6
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Tue Jul 18 11:56:37 2006 -0400
    
        add XExtensionKeyboard and XExtensionPointer classes
        Add two new classes of device, XExtensionKeyboard, and XExtensionPointer.
    
    commit 7a4a2a3e733378abced0a184627adfda4ed387b9
    Author: Daniel Stone <daniel.stone@nokia.com>
    Date:   Mon Jul 17 19:34:45 2006 -0400
    
        add DevicePresenceNotify event, clean up
        Add DevicePresenceNotify event, which indicates that something in the device
        list changed (Kristian Høgsberg, Red Hat).
        Add a core event control, which toggles the sending or not of core events by
        an extended device.
        Clean up some random detritus from the MetroLink merge.
    
    commit 6767671f502964d385aa41de3a45fb479c6330c0
    Author: Alan Coopersmith <alan.coopersmith@sun.com>
    Date:   Fri Jul 14 18:56:18 2006 -0700
    
        renamed: .cvsignore -> .gitignore
    
    commit 4cc2697880ae61723094dacf78ffe77d81f6e0ee
    Author: Kevin E Martin <kem@kem.org>
    Date:   Thu Dec 15 00:24:37 2005 +0000
    
        Update package version number for final X11R7 release candidate.
    
    commit 3ade2fe8443f572abeee73b4fa8e986e4a054017
    Author: Kevin E Martin <kem@kem.org>
    Date:   Wed Oct 19 02:48:14 2005 +0000
    
        Update package version number for RC1 release.
    
    commit 67498db2df7435d9d59eda4ac444c6560da839b3
    Author: Eric Anholt <anholt@freebsd.org>
    Date:   Tue Aug 2 19:19:38 2005 +0000
    
        Add basic .cvsignore files for proto modules.
    
    commit 742a1eb222d662fc9247ab7c1bd337ffef01eafb
    Author: Kevin E Martin <kem@kem.org>
    Date:   Fri Jul 29 21:22:55 2005 +0000
    
        Various changes preparing packages for RC0:
        - Verify and update package version numbers as needed
        - Implement versioning scheme
        - Change bug address to point to bugzilla bug entry form
        - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
            reenable it)
        - Fix makedepend to use pkgconfig and pass distcheck
        - Update build script to build macros first
        - Update modular Xorg version
    
    commit 9161a356397a07002e03cf1846d212c7154f4c52
    Author: Daniel Stone <daniel@fooishbar.org>
    Date:   Sat May 21 04:04:21 2005 +0000
    
        Set version to 1.3.
    
    commit 492f0a9e16bfe9cfb2c7b888b5b5e511db2bf83b
    Author: Adam Jackson <ajax@nwnk.net>
    Date:   Thu May 19 00:22:39 2005 +0000
    
        revert last change, didn't do right thing at all, sorry for the noise
    
    commit ec71e17293b90ff5eeaa97566751fc5c3955904a
    Author: Adam Jackson <ajax@nwnk.net>
    Date:   Thu May 19 00:10:18 2005 +0000
    
        Require automake 1.7 in AM_INIT_AUTOMAKE
    
    commit 242316c65e53d1bba244e4f35e5a93718b0ea8d0
    Author: Josh Triplett <josh@speakeasy.net>
    Date:   Mon May 16 03:30:03 2005 +0000
    
        Add COPYING file for Input.
    
    commit 5c5945a47990b7bc077bcfdbabb6e0003cbf1659
    Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
    Date:   Mon May 9 18:20:04 2005 +0000
    
        Change all the protonames from <extension>Ext to <extension>Proto.
    
    commit 518f527ab685d2d082796460113bb7a9ea9bfe15
    Author: Kevin E Martin <kem@kem.org>
    Date:   Fri May 6 01:46:30 2005 +0000
    
        Initial build system files for proto module.
    
    commit 4254b2967e3c5f256138f35de1ab49efff87220c
    Author: Egbert Eich <eich@suse.de>
    Date:   Fri Apr 23 18:43:06 2004 +0000
    
        Merging XORG-CURRENT into trunk
    
    commit ca910a158bdc060d17cf3c00f93c82c3a6ee6f05
    Author: Egbert Eich <eich@suse.de>
    Date:   Sun Mar 14 08:31:35 2004 +0000
    
        Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
    
    commit 08e413c25f385e51466ef3309d880c1f63bf0a73
    Author: Egbert Eich <eich@suse.de>
    Date:   Wed Mar 3 12:10:54 2004 +0000
    
        Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
    
    commit 1b98dbf2eab5a8ef74afda0c669c9fdfc6461cda
    Author: Egbert Eich <eich@suse.de>
    Date:   Thu Feb 26 13:35:11 2004 +0000
    
        readding XFree86's cvs IDs
    
    commit f276a601f272742ea8570fae4326c172cf4b8723
    Author: Egbert Eich <eich@suse.de>
    Date:   Thu Feb 26 09:22:27 2004 +0000
    
        Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
    
    commit 47d36cccfdf0e65848bb2e9595779501a76d6000
    Author: Kaleb Keithley <kaleb@freedesktop.org>
    Date:   Tue Nov 25 19:28:02 2003 +0000
    
        XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
    
    commit 4383a95e0bbc2f09394deefc453c2edd1c813d0f
    Author: Kaleb Keithley <kaleb@freedesktop.org>
    Date:   Fri Nov 14 16:48:42 2003 +0000
    
        XFree86 4.3.0.1
    
    commit 51468f1607f0b88576628c89e85d159afbb4628e
    Author: Kaleb Keithley <kaleb@freedesktop.org>
    Date:   Fri Nov 14 15:54:35 2003 +0000
    
        R6.6 is the Xorg base-line