[PATCH] evdev: Report initial calibration parameters.
David Woodhouse
dwmw2 at infradead.org
Mon Nov 30 16:14:54 PST 2009
Where an initial calibration is provided through the Calibration option
to the driver, it wasn't being exposed in the 'Evdev Axis Calibration'
property. Remedy that...
Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
Acked-by: Peter Hutterer <peter.hutterer at who-t.net>
diff --git a/src/evdev.c b/src/evdev.c
index 81a0bd5..6bc80ef 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -2412,8 +2413,22 @@ EvdevInitProperty(DeviceIntPtr dev)
prop_calibration = MakeAtom(EVDEV_PROP_CALIBRATION,
strlen(EVDEV_PROP_CALIBRATION), TRUE);
- rc = XIChangeDeviceProperty(dev, prop_calibration, XA_INTEGER, 32,
- PropModeReplace, 0, NULL, FALSE);
+ if (pEvdev->flags & EVDEV_CALIBRATED) {
+ int calibration[4];
+
+ calibration[0] = pEvdev->calibration.min_x;
+ calibration[1] = pEvdev->calibration.max_x;
+ calibration[2] = pEvdev->calibration.min_y;
+ calibration[3] = pEvdev->calibration.max_y;
+
+ rc = XIChangeDeviceProperty(dev, prop_calibration, XA_INTEGER,
+ 32, PropModeReplace, 4, calibration,
+ FALSE);
+ } else {
+ rc = XIChangeDeviceProperty(dev, prop_calibration, XA_INTEGER,
+ 32, PropModeReplace, 0, NULL,
+ FALSE);
+ }
if (rc != Success)
return;
--
David Woodhouse Open Source Technology Centre
David.Woodhouse at intel.com Intel Corporation
More information about the xorg
mailing list