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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> +## 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 -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

