filter: perform speed computations with doubles
authorDerek Foreman <derekf@osg.samsung.com>
Thu, 30 Oct 2014 21:34:14 +0000 (16:34 -0500)
committerPeter Hutterer <peter.hutterer@who-t.net>
Fri, 31 Oct 2014 04:12:19 +0000 (14:12 +1000)
Converting to integer before the sqrt calculation can cause loss of
motion at low speed.

Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
src/filter.c

index 205cd03..afb87ef 100644 (file)
@@ -139,8 +139,8 @@ tracker_by_offset(struct pointer_accelerator *accel, unsigned int offset)
 static double
 calculate_tracker_velocity(struct pointer_tracker *tracker, uint64_t time)
 {
-       int dx;
-       int dy;
+       double dx;
+       double dy;
        double distance;
 
        dx = tracker->dx;