summaryrefslogtreecommitdiff
path: root/Xi
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2009-06-16 10:51:17 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2009-06-18 14:40:53 +1000
commit80837dbefd9d5e96ab5c1f4b4c2d5c66ce17ce67 (patch)
tree7230d2eb08c7eef512d45e34ffc7f3a5866d8eea /Xi
parent25b6fc4a42f7698e6ae0b16becb316bfd7835d05 (diff)
input: change axisVal from uint to double.
With subpixel support, uint just doesn't cut it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'Xi')
-rw-r--r--Xi/exevents.c5
-rw-r--r--Xi/queryst.c2
2 files changed, 4 insertions, 3 deletions
diff --git a/Xi/exevents.c b/Xi/exevents.c
index 0d8322a9d..dc9eba70e 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -539,7 +539,7 @@ DeepCopyPointerClasses(DeviceIntPtr from, DeviceIntPtr to)
to->valuator = xrealloc(to->valuator, sizeof(ValuatorClassRec) +
from->valuator->numAxes * sizeof(AxisInfo) +
- from->valuator->numAxes * sizeof(unsigned int));
+ from->valuator->numAxes * sizeof(double));
v = to->valuator;
if (!v)
FatalError("[Xi] no memory for class shift.\n");
@@ -548,7 +548,7 @@ DeepCopyPointerClasses(DeviceIntPtr from, DeviceIntPtr to)
v->axes = (AxisInfoPtr)&v[1];
memcpy(v->axes, from->valuator->axes, v->numAxes * sizeof(AxisInfo));
- v->axisVal = (int*)(v->axes + from->valuator->numAxes);
+ v->axisVal = (double*)(v->axes + from->valuator->numAxes);
v->sourceid = from->id;
} else if (to->valuator && !from->valuator)
{
@@ -844,6 +844,7 @@ UpdateDeviceState(DeviceIntPtr device, DeviceEvent* event)
{
/* XXX: Relative/Absolute mode */
v->axisVal[i] = event->valuators.data[i];
+ v->axisVal[i] += event->valuators.data_frac[i];
}
}
diff --git a/Xi/queryst.c b/Xi/queryst.c
index 2b20837d1..c6858e4e0 100644
--- a/Xi/queryst.c
+++ b/Xi/queryst.c
@@ -85,7 +85,7 @@ ProcXQueryDeviceState(ClientPtr client)
xValuatorState *tv;
xQueryDeviceStateReply rep;
DeviceIntPtr dev;
- int *values;
+ double *values;
REQUEST(xQueryDeviceStateReq);
REQUEST_SIZE_MATCH(xQueryDeviceStateReq);