[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'ubuntu+1'



 ChangeLog                               |  840 +++++++++++++++++++++++++++
 Xi/exevents.c                           |  951 ++++++++++++++++++++++++++++++
 Xi/extinit.c                            |   28 
 Xi/xiallowev.c                          |   53 +
 Xi/xipassivegrab.c                      |   27 
 Xi/xiquerydevice.c                      |   41 +
 Xi/xiquerydevice.h                      |    1 
 Xi/xiselectev.c                         |   48 +
 configure.ac                            |    2 
 debian/changelog                        |   10 
 debian/control                          |    4 
 debian/patches/220_test-loop.patch      |   36 +
 debian/patches/series                   |    1 
 debian/serverminver                     |    2 
 dix/Makefile.am                         |    1 
 dix/devices.c                           |   87 ++
 dix/eventconvert.c                      |   63 +-
 dix/events.c                            |   64 +-
 dix/getevents.c                         |  352 ++++++++++-
 dix/grabs.c                             |    3 
 dix/inpututils.c                        |    5 
 dix/touch.c                             |  982 ++++++++++++++++++++++++++++++++
 dix/window.c                            |    9 
 hw/xfree86/common/xf86Module.h          |    2 
 hw/xfree86/common/xf86Xinput.c          |   24 
 hw/xfree86/common/xf86Xinput.h          |    3 
 include/dix.h                           |    7 
 include/events.h                        |    1 
 include/eventstr.h                      |   30 
 include/exevents.h                      |   12 
 include/input.h                         |   87 ++
 include/inputstr.h                      |   55 +
 include/misc.h                          |    4 
 include/protocol-versions.h             |    2 
 mi/mieq.c                               |   37 -
 test/Makefile.am                        |    3 
 test/input.c                            |   17 
 test/touch.c                            |  270 ++++++++
 test/xi2/protocol-eventconvert.c        |  106 +++
 test/xi2/protocol-xipassivegrabdevice.c |    2 
 test/xi2/protocol-xiselectevents.c      |   38 -
 41 files changed, 4208 insertions(+), 102 deletions(-)

New commits:
commit 81152a3e25371e7b6b8e6402fb8714f1fedd1d2f
Author: Chase Douglas <chase.douglas@canonical.com>
Date:   Thu Dec 22 12:21:18 2011 -0800

    releasing version 2:1.11.3-0ubuntu1

diff --git a/debian/changelog b/debian/changelog
index 1f2189e..92ca608 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xorg-server (2:1.11.3-0ubuntu1) UNRELEASED; urgency=low
+xorg-server (2:1.11.3-0ubuntu1) precise; urgency=low
 
   * New upstream bugfix release
   * Merge in input changes from upstream master through commit e7df42a
@@ -7,7 +7,7 @@ xorg-server (2:1.11.3-0ubuntu1) UNRELEASED; urgency=low
   * Add temporary patch for fixing a test case loop
     - Add 220_test-loop.patch
 
- -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 12:11:05 -0800
+ -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 12:11:39 -0800
 
 xorg-server (2:1.11.2.902-1ubuntu1) precise; urgency=low
 

commit 23f19def5b75148cee93305c19ba3d320beb2a83
Author: Chase Douglas <chase.douglas@canonical.com>
Date:   Thu Dec 22 12:11:37 2011 -0800

    Add temporary patch for fixing a test case loop
    
    * Add temporary patch for fixing a test case loop
      - Add 220_test-loop.patch

diff --git a/debian/changelog b/debian/changelog
index c478499..1f2189e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,8 +4,10 @@ xorg-server (2:1.11.3-0ubuntu1) UNRELEASED; urgency=low
   * Merge in input changes from upstream master through commit e7df42a
   * Bump input ABI
   * Bump x11proto-input-dev build dependency version
+  * Add temporary patch for fixing a test case loop
+    - Add 220_test-loop.patch
 
- -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 11:19:59 -0800
+ -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 12:11:05 -0800
 
 xorg-server (2:1.11.2.902-1ubuntu1) precise; urgency=low
 
diff --git a/debian/patches/220_test-loop.patch b/debian/patches/220_test-loop.patch
new file mode 100644
index 0000000..476e165
--- /dev/null
+++ b/debian/patches/220_test-loop.patch
@@ -0,0 +1,36 @@
+From 5750b6dbd015529e2c7b03755c8235ee3c9e6ff7 Mon Sep 17 00:00:00 2001
+From: Chase Douglas <chase.douglas@canonical.com>
+Date: Thu, 22 Dec 2011 11:55:34 -0800
+Subject: [PATCH] test/xi2: Really fix infinite loop in
+ test_convert_XITouchOwnershipEvent
+
+long i;
+for (i = 1; ; i <<= 1)
+  if (i == (1 << 31))
+    break;
+
+(1 << 31) is compiled as an int, and thus is equal to -2147483648. We
+are trying to compare it against a long, which on 64-bit machines is
+2147483648. This results in an infinite loop.
+
+Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+---
+ test/xi2/protocol-eventconvert.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/test/xi2/protocol-eventconvert.c b/test/xi2/protocol-eventconvert.c
+index faa9f40..bf1493c 100644
+--- a/test/xi2/protocol-eventconvert.c
++++ b/test/xi2/protocol-eventconvert.c
+@@ -1005,7 +1005,7 @@ test_convert_XITouchOwnershipEvent(void)
+     {
+         in.touchid = i;
+         test_XITouchOwnershipEvent(&in);
+-	if (i == (1 << 31))
++	if (i == ((long)1 << 31))
+ 	    break;
+     }
+ }
+-- 
+1.7.5.4
+
diff --git a/debian/patches/series b/debian/patches/series
index a37033e..aef2d0d 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -27,3 +27,4 @@
 208_switch_on_release.diff
 209_add_legacy_bgnone_option.patch
 214_glx_dri_searchdirs.patch
+220_test-loop.patch

commit 55e89ebdfe50e6bda5cf4756642435ec4e9e5d0a
Author: Chase Douglas <chase.douglas@canonical.com>
Date:   Thu Dec 22 11:20:22 2011 -0800

    Bump x11proto-input-dev build dependency version

diff --git a/debian/changelog b/debian/changelog
index 1a3fdf0..c478499 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,8 +3,9 @@ xorg-server (2:1.11.3-0ubuntu1) UNRELEASED; urgency=low
   * New upstream bugfix release
   * Merge in input changes from upstream master through commit e7df42a
   * Bump input ABI
+  * Bump x11proto-input-dev build dependency version
 
- -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 11:16:36 -0800
+ -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 11:19:59 -0800
 
 xorg-server (2:1.11.2.902-1ubuntu1) precise; urgency=low
 
diff --git a/debian/control b/debian/control
index b2c0298..e334140 100644
--- a/debian/control
+++ b/debian/control
@@ -41,7 +41,7 @@ Build-Depends:
  x11proto-xf86vidmode-dev (>= 2.2.99.1),
  xtrans-dev (>= 1.2.2),
  libxau-dev (>= 1:1.0.5-2),
- x11proto-input-dev (>= 2.0.1-1ubuntu1),
+ x11proto-input-dev (>= 2.1.99.4),
  x11proto-dri2-dev (>= 2.6),
  libxdmcp-dev (>= 1:0.99.1),
  libxfont-dev (>= 1:1.4.2),
@@ -159,7 +159,7 @@ Architecture: any
 Depends:
  libpixman-1-dev (>= 0.21.8),
  x11proto-core-dev (>= 7.0.22),
- x11proto-input-dev (>= 2.0.1-1ubuntu1),
+ x11proto-input-dev (>= 2.1.99.4),
  x11proto-xext-dev (>= 7.1.99),
  x11proto-video-dev,
  x11proto-randr-dev (>= 1.2.99.3),

commit 1b94b9ebc65cf15f4ec5d8e7973bdbc8a1de6f9c
Author: Chase Douglas <chase.douglas@canonical.com>
Date:   Thu Dec 22 11:16:45 2011 -0800

    Bump input ABI

diff --git a/debian/changelog b/debian/changelog
index c9ed0a2..1a3fdf0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,9 @@ xorg-server (2:1.11.3-0ubuntu1) UNRELEASED; urgency=low
 
   * New upstream bugfix release
   * Merge in input changes from upstream master through commit e7df42a
+  * Bump input ABI
 
- -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 11:15:16 -0800
+ -- Chase Douglas <chase.douglas@ubuntu.com>  Thu, 22 Dec 2011 11:16:36 -0800
 
 xorg-server (2:1.11.2.902-1ubuntu1) precise; urgency=low
 
diff --git a/debian/serverminver b/debian/serverminver
index 771188c..9a618f9 100644
--- a/debian/serverminver
+++ b/debian/serverminver
@@ -1,3 +1,3 @@
 2:1.10.99.901
 ABI_VIDEODRV_VERSION:11.0
-ABI_XINPUT_VERSION:15.0
+ABI_XINPUT_VERSION:16.0

commit d20a5de6aea1106503d5cd4222894307a591833d
Author: Chase Douglas <chase.douglas@canonical.com>
Date:   Thu Dec 22 11:15:54 2011 -0800

    Merge in input changes from upstream master through commit e7df42a

diff --git a/ChangeLog b/ChangeLog
index 374b066..c1fd54b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,843 @@
+commit 0c292448ebcfcc6e5072efada55f8135b60b7795
+Author: Keith Packard <keithp@keithp.com>
+Date:   Thu Dec 22 09:35:51 2011 -0800
+
+    test/xi2: Fix infinite loop in test_convert_XITouchOwnershipEvent
+    
+    The touchid test was using a loop like:
+    
+    	for(i = 1; i < 0xffffffff; i <<= 1)
+    
+    When 'i' is a 32-bit variable, this infinite loops as it goes from
+    0x80000000 to 0. 'i' is declared as 'long', which is 32-bit in 32-bit mode.
+    
+    Signed-off-by: Keith Packard <keithp@keithp.com>
+    (cherry picked from commit e7df42ab68e30588a5e32ed543b0711821daf009)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 738549e470ea1ae792840bbc50766a017de23cff
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 22 10:00:15 2011 +1000
+
+    test: fix grab mode value tests for new XIGrabModeTouch
+    
+    This test checks that last-valid-mode + 1 returns a BadValue. With the
+    addition of XIGrabModeTouch, that value has changed - sync it up again.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit f75bdf7fbe757f4603e39139acc3c90538a45e15)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit bc282a9a1492137b44486e39f08b2e4cbc34f92b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 21 14:45:27 2011 +1000
+
+    Xi: only activate the device grab if we don't already have one
+    
+    If the device is already grabbed, don't activate the passive grab, it screws
+    with our event masks. Just deliver to the grabbing client instead.
+    
+    Reported-by: Carlos Garnacho <carlosg@gnome.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 2bb282cd45cb8149b39d72397ef5bbcfebca11d2)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 3fc68a253e8f45bedeebf6d6a5e885cc720b68cf
+Author: Carlos Garnacho <carlosg@gnome.org>
+Date:   Wed Dec 21 01:08:40 2011 +0100
+
+    dix: fix xi2 mask/filter when delivering grabbed events
+    
+    Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
+    Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 475ef5cc8339fac3696fe654ef683f92f0b0cc2c)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit a4d462fa2cdec99ae4444be843cd2eca8b7598ca
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon Dec 19 09:08:05 2011 +1000
+
+    test: add a basic test for ownership event values
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 4551510f752624592f9201f73db89ac1325a234a)
+    
+    Backported swap macros for test_values_XITouchOwnershipEvent.
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 4f18583067c194b6e484405752a85708e2a1a00b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Mon Dec 19 08:31:37 2011 +1000
+
+    test: drop printfs from protocol-eventconvert.c
+    
+    The test outputs are noisy enough, no need having these here too.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    (cherry picked from commit 0c661dc478b4b436a3e61066d31bc510c7a08456)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit e3a9114e1e31378e96eaacf660e665ed6e50c428
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 21 11:11:48 2011 +1000
+
+    dix: remove requirement for client_id be the first element
+    
+    Leftover code from an earlier version of GetTouchEvents.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 8080d785b2c1e5791312ed0975efd1b8aea58d98)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 717ac30a73beac953c6aa5d94ca8df1bce7bb97d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:59:06 2011 +1000
+
+    mi: handle screen switching on pointer emulated touch events
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 8a32c39c00789c16006de61112627722ce548be1)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 0f9cfff4971ba9f2559312e4ab75fe576aec4b1c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:57:47 2011 +1000
+
+    mi: split move to new screen logic to a helper function
+    
+    No functional changes.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 48547068b115b1f5e5f46a70110454a2175fb9a4)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 73d9c55a86bf1361fcaabb8780fd01ddf5fc5e57
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Thu Dec 15 07:52:28 2011 +1000
+
+    dix: Remove touch grabs if the grab disappears
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 3b1e2035cc4740711360c845cfcdff07f7b60558)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit dcb3ee2ba3f533f2cabbce9c0c94b7acde4d5fa3
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:48:49 2011 +1000
+
+    dix: hook up passive grabs and pointer emulated passive grabs
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit cd3de8324e8908955a2e4be3000c8ffee8684c68)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit d87933d11530e056181bc13f0ee6724149c3d78c
+Author: Carlos Garnacho <carlosg@gnome.org>
+Date:   Tue Dec 13 15:41:23 2011 +0100
+
+    Xi: assign correct grab_mode/other_device_mode in XI2 passive grabs
+    
+    CreateGrab() expects the keyboard mode to be stored in grab_mode, and the
+    pointer mode in other_device_mode, so respect this in passive XI2 grabs,
+    and switch modes if needed.
+    
+    Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 5b169cb695bd450d7f64e3800f00c9237ee67f96)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 55e1e8691f2aa5f375a9c79bb469a3ad44ccd139
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:42:12 2011 +1000
+
+    Xi: add the hooks for passive touch grabs
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 4469430b109fa2da7ba3d2fadf66eca78b7156a0)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 118d0e5841ea025f573df777491ff07abb3a616b
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:21:38 2011 +1000
+
+    Xi: handle grab accept/reject requests
+    
+    Consists mostly of generating an ownership event and processing it.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit bb0af002dc9ad5b464dc6793aedb6d1ff65d001d)
+    
+    Conflicts:
+    
+    	Xi/xiallowev.c
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 9507e4e1f1562c37b1877f921e288124393d7a6e
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Dec 20 16:34:43 2011 -0800
+
+    Xi: hook up touch ownership handling
+    
+    Ownership changes don't get processed directly when they happen, instead the
+    DIX submits an ownership event which goes through ProcessTouchEvents and
+    ProcessTouchOwnershipEvents.
+    Then on the required events are generated and sent to clients.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 209b3d613a7bed126c81daedbad6461e4391e9e6)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 151ecb96cbb5747aa9a58dbf0d5c5afaae553025
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Dec 20 16:33:33 2011 -0800
+
+    Xi: hook up pointer emulation for emulating touches
+    
+    Includes a hack for implicit grab activation, because integrating this
+    requires a larger rewrite and I'm not sleeping enough as it is.
+    Right now, we deliver the event and check before/after if there is an
+    implicit grab on. If one activated, then store the event in the grab and
+    switch the listener type to a grab listener.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 1894468c2b9788efa70ef4fb5fc911711402f3a7)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 4ef22a181992b7348757f84a49909a7f6a5d12e0
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 17:04:38 2011 +1000
+
+    dix: add touch to pointer event conversion helper
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 753c4dca1e42035e29fb21458a746e484ed93ca3)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit b3af3cbbd525d432f294c1ca2e0c458dd5c41a6d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 17:02:30 2011 +1000
+
+    dix: add real_event parameter to ActivatePassiveGrab
+    
+    For touch events with pointer emulation, the event that triggers the grab
+    (the pointer event) is not the same as the actual event (the touch event).
+    For replaying, we need to store the real event then.
+    
+    No effective changes at this point, for the current caller event and
+    real_event are identical.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit c3843f5498a849920ab68cca3557411ad8ab3454)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit a9b4de42cce42a4185365b449c95b7569b0f45db
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Tue Dec 20 16:32:52 2011 -0800
+
+    Process and deliver touch events
+    
+    Does not include pointer emulation handling.
+    Does include partial ownership handling but not the actual processing of
+    ownership events.
+    
+    Note: this commit is a retroactive commit extracted from a series of ~50
+    commits and may thus appear a bit more complicated than what you'd write out
+    from scratch.
+    
+    Pointer processing tree is roughly:
+    - ProcessOtherEvents
+      - ProcessTouchEvents
+        - DeliverTouchEvents
+          - DeliverTouchBeginEvent|DeliverTouchEndEvent|...
+            - DeliverOneTouchEvent
+    
+    Also hooks up the event history playing to the right function now.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Co-authored-by: Chase Douglas <chase.douglas@canonical.com>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit e389a19a730055d4550ff708da83c78099a516fd)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 0951b7cc0c573a06600a8b0cb8a8cb423a471d77
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 07:53:19 2011 +1000
+
+    dix: set core and button state based on the touch state
+    
+    If a pointer-emulating touch caused a button to be logically down, set that
+    state in the input events.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 634b0da9a83076d0e9e0fc44dc5dc77b0c368bc1)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 90814f2ea800c5fa3f7121d4185e47b406565119
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 16:33:05 2011 +1000
+
+    Xi: make UpdateDeviceState aware of touch events
+    
+    Update the logical button state for pointer-emulating events. Button state
+    must be kept separate from the ButtonClassRec to avoid clearing the button
+    state on a touch end if there is a physical button still down.
+    
+    And obviously don't change the button state if we're currently replaying the
+    event history for some client.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit dbfd7b37a0ba21899d8ebb7e0b324301bd466c49)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 2636f32908aeefeabade64ba1b81b8430cfd6653
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 16:30:05 2011 +1000
+
+    dix: add TouchResourceIsOwner helper function
+    
+    The first listener in the sequence is the owner of the touch sequence.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 593c3e2eb3da5c5fb957b68c8025dfdbe1139639)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 83ea5e519c7e233409bcc9a210d7ce74518138e6
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 16:24:17 2011 +1000
+
+    dix: add helper functions for adding/removing touch listeners
+    
+    The DIX will call TouchSetupListeners once for a new touch. After that
+    the listener list remains static, with listeners only dropping out when they
+    either reject the grab or disappear.
+    
+    Exception: if grabs activate they are prefixed to the listeners.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 5d0260cc986e8c1f0907870b851d47fd73bb1b7d)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit dbd4702466dfe0c7b6d5be3942294708dfa0df21
+Author: Chase Douglas <chase.douglas@canonical.com>
+Date:   Wed Dec 14 16:26:04 2011 +1000
+
+    dix: add TouchGetPointerEventType helper function
+    
+    Returns the respective pointer event type for a given touch event type.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 6a68f97ce6704dd2ff2a50f91acd2da72c9995bd)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 125fbadadcd8dbc3dfd88a1bf7f610a5baf7a975
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 16:53:04 2011 +1000
+
+    dix: when a window disappears, remove it from the touch sprite trace
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 8e58ce73c8b79cb86e890369d0216cdd850c52a5)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit a02a40fd7ac661737d895dc1852c74a8a84e5b26
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 16:03:01 2011 +1000
+
+    dix: add helper functions to build up/verify the sprite trace
+    
+    Touch events' sprite trace stays the same for the duration of the touch
+    sequence.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit c18a173cf5f53778356c5e8f25ab132956f8c27d)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 6ca95a9524b0ebd47eab7e0b8b016014ff65ed2f
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 15:56:05 2011 +1000
+
+    dix: add touch event history helper functions
+    
+    If touch client has not registered for ownership events and a grab above
+    that client is rejected, the client needs to receive the complete event
+    history.
+    
+    The history currently doesn't really do fancy overflow handling. We assume
+    that the first TOUCH_HISTORY_SIZE events are the important ones and anything
+    after that is dropped. If that is a problem, fix the client that takes > 100
+    event to decide whether to accept or reject.
+    
+    Events marked with TOUCH_CLIENT_ID or TOUCH_REPLAYING must not be stored in
+    the history, they are events created by the DIX to comply with the protocol.
+    Any such event should already be in the history anyway.
+    
+    A fixme in this patch: we don't have a function to actually deliver the
+    event yet.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 40475261eacabb79a824db1138407a9d0f9fe37f)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 697dfd87140dac9c30d137631869287036bc938c
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Oct 26 09:08:17 2011 +1000
+
+    Support XI 2.2 officially
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit b274c472a5ad700aea5fe651d677e8cb34ffc976)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 88280f374162c8cca3e494226826cbcc27cdec86
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 15:45:19 2011 +1000
+
+    Xi: allow selecting for touch events
+    
+    Selecting for any of XI_TouchBegin/Update/End/Ownership requires the three
+    bits for begin/update/end to be set.
+    
+    Only one client at a time may select for XI_TouchBegin event
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit d2af968cb65873780a6e61342d5d3c23b9654e2a)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 4bcad5fc184ef3c22a7e0f417dc87ccb453d0791
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 16:45:04 2011 +1000
+
+    dix: handle DIX-submitted touch events
+    
+    The DIX needs to submit touch events for e.g. TouchEnd after an
+    acceptance/rejection. These have the TOUCH_CLIENT_ID flag set.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit f3df3ad668fcd417ffb5afa3bea79a73a348bc1a)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 61770844df70cffd9611e780f48396bbb929382a
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 15:41:07 2011 +1000
+
+    dix: generate touchpoints from driver-submitted data
+    
+    The touchpoints are generated, enqueued but not processed since we don't
+    handle them in the event processing yet.
+    
+    Co-authored-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 9ce8463a3334f76f128bb35b541aa6e67b4e4374)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit c1846423c3f36f3760f733bef69f841ad6417c93
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 15:29:48 2011 +1000
+
+    dix: add GetTouchOwnership event API
+    
+    No callers yet. This API is not to be used by drivers, it's an API for the
+    DIX which will create ownership events mainly on touch acceptance/rejection.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit bec51f5ec6575a1971ae5371a4b6d8563933032c)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit f63fb7517d9dc41abb6d666353f84f7b334b00ac
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 14:57:46 2011 +1000
+
+    dix: add DIX API to create touchpoints
+    
+    The DIX touchpoints are the ones used for event processing.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 5c63dc6dbcbebbb19d79575a9f1ec9878e6537f1)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit fc1f1f21580d76a2aacdf2fe8d3896e104d307f7
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 14:53:52 2011 +1000
+
+    dix: if we run out of space for new touch events, resize the queue
+    
+    The SIGIO handler forces us to drop the current touch and schedule the
+    actual resize for later. Should not happen if the device sets up the
+    TouchClassRec with the correct number of touchpoints.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 7f8127d203394cae45c3ded0d063030d7c5fdb70)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 5550bcd5b377bf67b2b79ce6f1447b86bdbd98f9
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 14:48:56 2011 +1000
+
+    dix: add helper functions to create DDX touch recs
+    
+    DDX touch points are the ones that keep records of the driver-submitted
+    touchpoints. They're unaffected by the grab state and terminate on a
+    TouchEnd submitted by the driver.
+    
+    The client ID assigned is server-global.
+    
+    Since drivers usually submit in the SIGIO handler, we cannot allocate in the
+    these functions.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 758bc57ba5a89f765d83f0b169aa09e79a89bf89)
+    
+    Conflicts:
+    
+    	test/Makefile.am
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 378fb64a547a6ad2be4451a7aa634a3c91038644
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Thu Dec 15 08:30:02 2011 +1000
+
+    xfree86: bump the input ABI for the touch changes
+    
+    New additions to the API:
+    - InitTouchClassDeviceStruct
+    - xf86PostTouchEvent
+    
+    Changes to the ABI:
+    - DeviceIntRec now contains a TouchClassPtr
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 1a133eb8b1ddbe0da7c2fbf7f6a686ec4512373e)
+    
+    Conflicts:
+    
+    	hw/xfree86/common/xf86Module.h
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 508df2ddd779504c3fef213e2a2d1a1ed61104c1
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 12:46:40 2011 +1000
+
+    input: add a TouchClassRec to the devices
+    
+    These structs will be used to store touch-related data, events and
+    information.
+    
+    Drivers must call InitTouchClassDeviceStruct to set up a multi-touch capable
+    device.
+    
+    Touchpoints for the DDX and the DIX are handled separately - touchpoints
+    submitted by the driver/DDX will be stored in the DDXTouchPointInfoRec. Once
+    the touchpoints are processed by the DIX, new TouchPointInfoRecs are created
+    and stored. This process is already used for pointer events with the
+    last.valuators field.
+    
+    Note that this patch does not actually add the generation of touch events,
+    only the required structs.
+    
+    TouchListeners are (future) recipients of touch or emulated pointer events.
+    Each listener is in a state, depending which event they have already
+    received. The type of listener defines how the listener got to be one.
+    
+    Co-authored-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 3fb258ca28850c998097b55884774cb95f476f69)
+    
+    Backported swap macros for SwapTouchInfo.
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit db04a6a8ea22c43daea1c26892694d89e7644c1c
+Author: Daniel Stone <daniel@fooishbar.org>
+Date:   Wed Dec 14 14:41:48 2011 +1000
+
+    Add the touch input API stubs
+    
+    xf86PostTouchEvent is the driver API to submit touch events to the server.
+    This API doesn't do anything yet though but now we can at least bump the
+    API.
+    
+    For valuators, drivers should use the existing xf86InitValuatorAxisStruct
+    function.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 098b837440e40bbc485368ec9658e12efd6ef581)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 2e040f9bb00c8dbeda5cfbf768c618e23c2a25b1
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 13:51:12 2011 +1000
+
+    Hook up the ownership events
+    
+    This patch applies most of the protocol conversions and the internal event
+    type for ownership events.
+    
+    Note that ownership events are generated by the DIX only, they do not pass
+    through the event queue.
+    
+    Co-authored-by: Daniel Stone <daniel@fooishbar.org>
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 93c2a1628a9f6e7480d834bf55c080997fd18911)
+    
+    Backported swap macros in STouchOwnershipEvent.
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit bb67773ce0ee49f80de8828777285780a64ea60d
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 13:21:59 2011 +1000
+
+    Xi: process raw touch events
+    
+    No-one can generated them yet, but if they could, we'd be processing them
+    like there was no tomorrow.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 3390d3fc0347947796aa245d70fefecf59b7bfe4)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit e7298a1fefc4b6083d6c5a45bf1f992e4e6c2233
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 12:45:28 2011 +1000
+
+    Hook up TouchBegin/Update/End events
+    
+    The are the same as device events internally but require the touch ID
+    separately from the detail.button field (the protocol uses the detail field
+    for the touch id).
+    For simpler integration of pointer emulation we need to set the
+    detail.button field while keeping the touchid around.
+    
+    Add the three new touch event types to the various places in the server
+    where they need to be handled. The actual handling of the events is somewhat
+    more complicated in most places.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 84db813b9db34975b5fe288a8a551bb98f0cc1c1)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 1274c19c51b08cb8ad42f1655cf13112c06ad7ca
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 15:00:33 2011 +1000
+
+    include: add a bunch of flags for GetTouchEvent processing
+    
+    TOUCH_CLIENT_ID is set if the touch was generated from a client ID instead
+    of a DDX/driver touch ID. i.e. submitted by the dix.
+    
+    TOUCH_END is a special flag that's required to force the touch to end.
+    Since the protocol with grab replaying and pointer emulation is rather
+    complex, it's quite hard to know otherwise when a touch sequence should
+    really die.
+    
+    The others do what it says on the imaginary box.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 92a5862d0c120b009a688237ec7142b7c21ae272)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 092f816c7f36fd22b5ec09a720327474c9ac5a16
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 12:19:27 2011 +1000
+
+    include: RawTouchEnd is the last event now
+    
+    Plus, use the actual definition from the protocol instead of the numeric
+    values. Turns out not everyone knows the protocol event IDs by heart.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 956a97487beada8cf5f354550ff779635cc64361)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 73c74a9b5ec4e22698a5ba1e31e84c7305160054
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 12:15:29 2011 +1000
+
+    tests: update for touch support
+    
+    Touch event mask must be set for all three event types.
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 92c6c0c1d2d6a8882ed97b0e7f2952978ee5ce82)
+    
+    Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
+
+commit 7452df21f4131365efd9fffd7dfff03bb1ad965a
+Author: Peter Hutterer <peter.hutterer@who-t.net>
+Date:   Wed Dec 14 10:41:17 2011 +1000
+
+    Require inputproto 2.1.99.3
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+    Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
+    (cherry picked from commit 731b1db2fcc82c0a8afd28d7f28363c1db0a20ce)


Reply to: