[oe-commits] Thomas Kunze : xserver-kdrive_1.4.090: fix rotated tslib input

GIT User account git at amethyst.openembedded.net
Mon Oct 20 13:31:14 UTC 2008


Module: openembedded.git
Branch: org.openembedded.dev
Commit: f932f18774dea3f6c208eb2edc1ba2a30cd10611
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=f932f18774dea3f6c208eb2edc1ba2a30cd10611

Author: Thomas Kunze <thommycheck at gmx.de>
Date:   Mon Oct 20 15:27:17 2008 +0200

xserver-kdrive_1.4.090: fix rotated tslib input
* close #3741

---

 .../xorg-1.4-kdrive-rotation.patch                 |   31 ++++++++++++++++++++
 packages/xorg-xserver/xserver-kdrive_1.4.0.90.bb   |    3 +-
 2 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/packages/xorg-xserver/xserver-kdrive-1.4.0.90/xorg-1.4-kdrive-rotation.patch b/packages/xorg-xserver/xserver-kdrive-1.4.0.90/xorg-1.4-kdrive-rotation.patch
new file mode 100644
index 0000000..5e3eb8e
--- /dev/null
+++ b/packages/xorg-xserver/xserver-kdrive-1.4.0.90/xorg-1.4-kdrive-rotation.patch
@@ -0,0 +1,31 @@
+diff -rup a/hw/kdrive/src/kinput.c b/hw/kdrive/src/kinput.c
+--- a/hw/kdrive/src/kinput.c	2007-08-23 21:04:53.000000000 +0200
++++ b/hw/kdrive/src/kinput.c	2007-12-22 12:53:27.679853402 +0100
+@@ -2075,19 +2075,25 @@ KdEnqueuePointerEvent(KdPointerInfo *pi,
+ 
+     /* we don't need to transform z, so we don't. */
+     if (flags & KD_MOUSE_DELTA) {
++/* does it really make sense to transform relative coordinates depending on screen rotation??
+ 	if (pi->transformCoordinates) {
+ 	    x = matrix[0][0] * rx + matrix[0][1] * ry;
+ 	    y = matrix[1][0] * rx + matrix[1][1] * ry;
+ 	}
+-	else {
++	else {*/
+ 	    x = rx;
+ 	    y = ry;
+-	}
++/*	}*/
+     }
+     else {
+ 	if (pi->transformCoordinates) {
+ 	    x = matrix[0][0] * rx + matrix[0][1] * ry;
+ 	    y = matrix[1][0] * rx + matrix[1][1] * ry;
++/* negative absolute values indicate calculation from the oposite end of the axis */
++            if (x < 0)
++                x += matrix[0][2];
++            if (y < 0)
++                y += matrix[1][2];
+ 	}
+ 	else {
+ 	    x = rx;
diff --git a/packages/xorg-xserver/xserver-kdrive_1.4.0.90.bb b/packages/xorg-xserver/xserver-kdrive_1.4.0.90.bb
index 1f047f0..963b112 100644
--- a/packages/xorg-xserver/xserver-kdrive_1.4.0.90.bb
+++ b/packages/xorg-xserver/xserver-kdrive_1.4.0.90.bb
@@ -3,7 +3,7 @@ require xserver-kdrive-common.inc
 DEPENDS += "hal libxkbfile libxcalibrate pixman"
 
 PE = "1"
-FILE_PR = "r2"
+FILE_PR = "r3"
 
 SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
 	${KDRIVE_COMMON_PATCHES} \
@@ -24,6 +24,7 @@ SRC_URI = "${XORG_MIRROR}/individual/xserver/xorg-server-${PV}.tar.bz2 \
 	file://xorg-avr32-support.diff;patch=1 \
 	file://pkgconfig_fix.patch;patch=1 \
         file://no_xkb.patch;patch=1;pnum=0 \
+	file://xorg-1.4-kdrive-rotation.patch;patch=1 \
         "
 
 S = "${WORKDIR}/xorg-server-${PV}"





More information about the Openembedded-commits mailing list