debian/changelog                                   |    8 +++++
 debian/patches/505_query_pointer_touchscreen.patch |   32 +++++++++++++++++++++
 debian/patches/series                              |    1 
 3 files changed, 41 insertions(+)

New commits:
commit 8959b6c8399e6c36722c914db79264d0afc49491
Author: Chase Douglas <chase.doug...@ubuntu.com>
Date:   Tue Apr 3 17:42:25 2012 -0700

    Report button press when touchscreen touch is active (LP: #972985)
    
    * Report button press when touchscreen touch is active (LP: #972985)
      - Add temporary patch 505_query_pointer_touchscreen.patch
      - Fixes some compiz/unity touchscreen issues

diff --git a/debian/changelog b/debian/changelog
index bd2be2c..7cc52cd 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xorg-server (2:1.11.4-0ubuntu9) UNRELEASED; urgency=low
+
+  * Report button press when touchscreen touch is active (LP: #972985)
+    - Add temporary patch 505_query_pointer_touchscreen.patch
+    - Fixes some compiz/unity touchscreen issues
+
+ -- Chase Douglas <chase.doug...@ubuntu.com>  Tue, 03 Apr 2012 17:40:33 -0700
+
 xorg-server (2:1.11.4-0ubuntu8) precise; urgency=low
 
   [ Chase Douglas ]
diff --git a/debian/patches/505_query_pointer_touchscreen.patch 
b/debian/patches/505_query_pointer_touchscreen.patch
new file mode 100644
index 0000000..0443acf
--- /dev/null
+++ b/debian/patches/505_query_pointer_touchscreen.patch
@@ -0,0 +1,32 @@
+From 3d6bd9fd8bd565f4c0513b2649a678109f60bd27 Mon Sep 17 00:00:00 2001
+From: Chase Douglas <chase.doug...@canonical.com>
+Date: Tue, 3 Apr 2012 17:18:43 -0700
+Subject: [PATCH] Use touch state when querying pointer through core protocol
+
+QueryPointer is part of the core protocol. As such, it knows nothing
+about touch devices. Touches are converted to button 1 press, pointer
+motion, and button 1 release for core clients, so we should ensure the
+pointer state mask has button 1 set when XQueryPointer is used.
+
+Signed-off-by: Chase Douglas <chase.doug...@canonical.com>
+---
+ dix/events.c |    3 +--
+ 1 files changed, 1 insertions(+), 2 deletions(-)
+
+diff --git a/dix/events.c b/dix/events.c
+index 4470947..b9f9cfa 100644
+--- a/dix/events.c
++++ b/dix/events.c
+@@ -5098,8 +5098,7 @@ ProcQueryPointer(ClientPtr client)
+     memset(&rep, 0, sizeof(xQueryPointerReply));
+     rep.type = X_Reply;
+     rep.sequenceNumber = client->sequence;
+-    rep.mask = mouse->button ? (mouse->button->state) : 0;
+-    rep.mask |= XkbStateFieldFromRec(&keyboard->key->xkbInfo->state);
++    rep.mask = event_get_corestate(mouse, keyboard);
+     rep.length = 0;
+     rep.root = (GetCurrentRootWindow(mouse))->drawable.id;
+     rep.rootX = pSprite->hot.x;
+-- 
+1.7.9.1
+
diff --git a/debian/patches/series b/debian/patches/series
index 50bfb35..120a81a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -36,3 +36,4 @@
 502_indirect_touch_window_set.patch
 503_fix_mouse_warp.patch
 504_implement_passive_touch_ungrab.patch
+505_query_pointer_touchscreen.patch


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1sfevg-0007v2...@vasks.debian.org

Reply via email to