25c4b40ffb
jumps (#852841)
33 lines
1.2 KiB
Diff
33 lines
1.2 KiB
Diff
From 171059409177652b9b7af31506dd8ee0e018330d Mon Sep 17 00:00:00 2001
|
|
From: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Date: Thu, 20 Sep 2012 01:22:32 +1000
|
|
Subject: [PATCH] dix: set the device transformation matrix
|
|
|
|
The property handler is registered after setting the property, so
|
|
dev->transform remains as all-zeros. That causes pixman_f_transform_invert()
|
|
to fail (transformAbsolute()) and invert remains as garbage. In some cases,
|
|
this may then cause a cursor jump to 0,0.
|
|
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
---
|
|
dix/devices.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/dix/devices.c b/dix/devices.c
|
|
index 46c759c..3cacbeb 100644
|
|
--- a/dix/devices.c
|
|
+++ b/dix/devices.c
|
|
@@ -306,6 +306,9 @@ AddInputDevice(ClientPtr client, DeviceProc deviceProc, Bool autoStart)
|
|
/* unity matrix */
|
|
memset(transform, 0, sizeof(transform));
|
|
transform[0] = transform[4] = transform[8] = 1.0f;
|
|
+ dev->transform.m[0][0] = 1.0;
|
|
+ dev->transform.m[1][1] = 1.0;
|
|
+ dev->transform.m[2][2] = 1.0;
|
|
|
|
XIChangeDeviceProperty(dev, XIGetKnownProperty(XI_PROP_TRANSFORM),
|
|
XIGetKnownProperty(XATOM_FLOAT), 32,
|
|
--
|
|
1.7.11.2
|
|
|