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

xorg-server: Changes to 'ubuntu-quantal'



 debian/changelog                                     |    9 ++
 debian/patches/238-fix-erratic-cursor-movement.patch |   61 +++++++++++++++++++
 debian/patches/500_pointer_barrier_thresholds.diff   |    2 
 debian/patches/series                                |    1 
 4 files changed, 71 insertions(+), 2 deletions(-)

New commits:
commit 44ae4c3fdd57662fae109a309530706d6f914d06
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Tue Aug 27 14:54:01 2013 +0300

    Fix patch 500 to apply.

diff --git a/debian/changelog b/debian/changelog
index 2e94ef7..3bd3317 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -9,6 +9,9 @@ xorg-server (2:1.13.0-0ubuntu6.2) UNRELEASED; urgency=low
     when using cursor movement when using "Coordinate Transformation Matrix".
     (LP: #1212123)
 
+  [ Timo Aaltonen ]
+  * Fix patch 500 to apply.
+
  -- Maarten Lankhorst <maarten.lankhorst@ubuntu.com>  Tue, 12 Feb 2013 15:18:32 +0100
 
 xorg-server (2:1.13.0-0ubuntu6.1) quantal-proposed; urgency=low
diff --git a/debian/patches/500_pointer_barrier_thresholds.diff b/debian/patches/500_pointer_barrier_thresholds.diff
index b61dcfc..9206298 100644
--- a/debian/patches/500_pointer_barrier_thresholds.diff
+++ b/debian/patches/500_pointer_barrier_thresholds.diff
@@ -816,8 +816,6 @@ index 71f88a9..8b204dc 100644
  /* Xinerama */
  extern int (*PanoramiXSaveXFixesVector[XFixesNumberRequests]) (ClientPtr);
  void PanoramiXFixesInit(void);
-diff --git a/dix/dixutils.c b/dix/dixutils.c
-index 9eb5489..521bdce 100644
 diff -Nru /dev/null xorg-server/test/gtest/dummy.conf
 --- /dev/null	1970-01-01 01:00:00.000000000 +0100
 +++ xorg-server/test/gtest/dummy.conf	2012-05-21 18:00:45.996945542 +0200

commit 6adaa1361fcbc57e6d69c04c11ce14447c355af2
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date:   Tue Aug 27 14:45:07 2013 +0300

    Add 238-fix-erratic-cursor-movement.patch to fix erratic cursor movement when using cursor movement when using "Coordinate Transformation Matrix". (LP: #1212123)

diff --git a/debian/changelog b/debian/changelog
index 9351786..2e94ef7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,14 @@
 xorg-server (2:1.13.0-0ubuntu6.2) UNRELEASED; urgency=low
 
+  [ Maarten Lankhorst ]
   * add patch to fix starting xorg-server with no outputs connected (LP: #1122072)
     - fixup-headless.patch
 
+  [ Shih-Yuan Lee ]
+  * Add 238-fix-erratic-cursor-movement.patch to fix erratic cursor movement
+    when using cursor movement when using "Coordinate Transformation Matrix".
+    (LP: #1212123)
+
  -- Maarten Lankhorst <maarten.lankhorst@ubuntu.com>  Tue, 12 Feb 2013 15:18:32 +0100
 
 xorg-server (2:1.13.0-0ubuntu6.1) quantal-proposed; urgency=low
diff --git a/debian/patches/238-fix-erratic-cursor-movement.patch b/debian/patches/238-fix-erratic-cursor-movement.patch
new file mode 100644
index 0000000..38e09c2
--- /dev/null
+++ b/debian/patches/238-fix-erratic-cursor-movement.patch
@@ -0,0 +1,61 @@
+## Description: dix: Save touchpoint last coordinates before transform.
+## Origin/Author: Yuly Novikov <ynovikov@chromium.org>
+## Bug: https://bugs.freedesktop.org/show_bug.cgi?id=49347
+Index: xorg-server-lts-quantal-1.13.0/dix/getevents.c
+===================================================================
+--- xorg-server-lts-quantal-1.13.0.orig/dix/getevents.c	2013-08-14 13:59:15.110805225 +0800
++++ xorg-server-lts-quantal-1.13.0/dix/getevents.c	2013-08-14 14:05:01.452522627 +0800
+@@ -1964,32 +1964,27 @@
+     default:
+         return 0;
+     }
+-    if (t->mode == XIDirectTouch && !(flags & TOUCH_CLIENT_ID)) {
+-        if (!valuator_mask_isset(&mask, 0))
+-            valuator_mask_set_double(&mask, 0,
+-                                     valuator_mask_get_double(touchpoint.ti->
+-                                                              valuators, 0));
+-        if (!valuator_mask_isset(&mask, 1))
+-            valuator_mask_set_double(&mask, 1,
+-                                     valuator_mask_get_double(touchpoint.ti->
+-                                                              valuators, 1));
+-    }
+ 
+     /* Get our screen event co-ordinates (root_x/root_y/event_x/event_y):
+      * these come from the touchpoint in Absolute mode, or the sprite in
+      * Relative. */
+     if (t->mode == XIDirectTouch) {
+-        transformAbsolute(dev, &mask);
+-
+         if (!(flags & TOUCH_CLIENT_ID)) {
+-            for (i = 0; i < valuator_mask_size(&mask); i++) {
++            for (i = 0; i < max(valuator_mask_size(&mask), 2); i++) {
+                 double val;
+ 
+                 if (valuator_mask_fetch_double(&mask, i, &val))
+                     valuator_mask_set_double(touchpoint.ti->valuators, i, val);
++                /* If the device doesn't post new X and Y axis values,
++                 * use the last values posted.
++                 */
++                else if (i < 2 &&
++                    valuator_mask_fetch_double(touchpoint.ti->valuators, i, &val))
++                    valuator_mask_set_double(&mask, i, val);
+             }
+         }
+ 
++        transformAbsolute(dev, &mask);
+         clipAbsolute(dev, &mask);
+     }
+     else {
+Index: xorg-server-lts-quantal-1.13.0/include/inputstr.h
+===================================================================
+--- xorg-server-lts-quantal-1.13.0.orig/include/inputstr.h	2013-08-14 13:59:15.110805225 +0800
++++ xorg-server-lts-quantal-1.13.0/include/inputstr.h	2013-08-14 13:59:15.106805195 +0800
+@@ -331,7 +331,7 @@
+     uint32_t ddx_id;            /* touch ID given by the DDX */
+     Bool emulate_pointer;
+ 
+-    ValuatorMask *valuators;    /* last recorded axis values */
++    ValuatorMask *valuators;    /* last axis values as posted, pre-transform */
+ } DDXTouchPointInfoRec;
+ 
+ typedef struct _TouchClassRec {
diff --git a/debian/patches/series b/debian/patches/series
index c4f7381..47f907b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -40,3 +40,4 @@ fixup-headless.patch
 230-fix-compat-output-selection.patch
 231-scan-pci-after-probing-devices.patch
 237-dix-set-the-device-transformation-matrix.patch
+238-fix-erratic-cursor-movement.patch


Reply to: