touchpad: use the evdev device's filter struct
authorPeter Hutterer <peter.hutterer@who-t.net>
Sun, 21 Sep 2014 23:35:53 +0000 (09:35 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Tue, 23 Sep 2014 00:46:30 +0000 (10:46 +1000)
We don't need a separate filter struct, we can use the parent evdev device.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
src/evdev-mt-touchpad.c
src/evdev-mt-touchpad.h

index 76535d0..68268cd 100644 (file)
@@ -65,7 +65,7 @@ tp_filter_motion(struct tp_dispatch *tp,
        motion.dy = *dy * tp->accel.y_scale_coeff;
 
        if (motion.dx != 0.0 || motion.dy != 0.0)
-               filter_dispatch(tp->filter, &motion, tp, time);
+               filter_dispatch(tp->device->pointer.filter, &motion, tp, time);
 
        *dx = motion.dx;
        *dy = motion.dy;
@@ -602,7 +602,6 @@ tp_destroy(struct evdev_dispatch *dispatch)
        tp_destroy_tap(tp);
        tp_destroy_buttons(tp);
 
-       filter_destroy(tp->filter);
        free(tp->touches);
        free(tp);
 }
@@ -849,7 +848,7 @@ tp_init_accel(struct tp_dispatch *tp, double diagonal)
        if (accel == NULL)
                return -1;
 
-       tp->filter = accel;
+       tp->device->pointer.filter = accel;
 
        return 0;
 }
index 107195f..784155b 100644 (file)
@@ -167,8 +167,6 @@ struct tp_dispatch {
                int32_t margin_y;
        } hysteresis;
 
-       struct motion_filter *filter;
-
        struct {
                double x_scale_coeff;
                double y_scale_coeff;