Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
---
 src/evdev-mt-touchpad-gestures.c | 10 ++++------
 src/evdev.c                      |  6 ++----
 src/libinput-private.h           |  9 +++------
 src/libinput.c                   | 21 +++++++++------------
 4 files changed, 18 insertions(+), 28 deletions(-)

diff --git a/src/evdev-mt-touchpad-gestures.c b/src/evdev-mt-touchpad-gestures.c
index 1456731..f852ff5 100644
--- a/src/evdev-mt-touchpad-gestures.c
+++ b/src/evdev-mt-touchpad-gestures.c
@@ -89,8 +89,7 @@ tp_gesture_start(struct tp_dispatch *tp, uint64_t time)
 static void
 tp_gesture_post_pointer_motion(struct tp_dispatch *tp, uint64_t time)
 {
-       double dx_unaccel, dy_unaccel;
-       struct normalized_coords delta;
+       struct normalized_coords delta, unaccel;
 
        /* When a clickpad is clicked, combine motion of all active touches */
        if (tp->buttons.is_clickpad && tp->buttons.state)
@@ -98,13 +97,12 @@ tp_gesture_post_pointer_motion(struct tp_dispatch *tp, 
uint64_t time)
        else
                delta = tp_get_average_touches_delta(tp);
 
-       tp_filter_motion(tp, &delta.x, &delta.y, &dx_unaccel, &dy_unaccel, 
time);
+       tp_filter_motion(tp, &delta.x, &delta.y, &unaccel.x, &unaccel.y, time);
 
        if (delta.x != 0.0 || delta.y != 0.0 ||
-           dx_unaccel != 0.0 || dy_unaccel != 0.0) {
+           unaccel.x != 0.0 || unaccel.y != 0.0) {
                pointer_notify_motion(&tp->device->base, time,
-                                     delta.x, delta.y,
-                                     dx_unaccel, dy_unaccel);
+                                     &delta, &unaccel);
        }
 }
 
diff --git a/src/evdev.c b/src/evdev.c
index 0a2f1f8..d1b0504 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -279,9 +279,7 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
                        break;
                }
 
-               pointer_notify_motion(base, time,
-                                     accel.x, accel.y,
-                                     unaccel.x, unaccel.x);
+               pointer_notify_motion(base, time, &accel, &unaccel);
                break;
        case EVDEV_ABSOLUTE_MT_DOWN:
                if (!(device->seat_caps & EVDEV_DEVICE_TOUCH))
@@ -376,7 +374,7 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
 
                        touch_notify_touch_motion(base, time, -1, seat_slot, x, 
y);
                } else if (device->seat_caps & EVDEV_DEVICE_POINTER) {
-                       pointer_notify_motion_absolute(base, time, x, y);
+                       pointer_notify_motion_absolute(base, time, &point);
                }
                break;
        case EVDEV_ABSOLUTE_TOUCH_UP:
diff --git a/src/libinput-private.h b/src/libinput-private.h
index d5fb696..a7e0b07 100644
--- a/src/libinput-private.h
+++ b/src/libinput-private.h
@@ -290,16 +290,13 @@ keyboard_notify_key(struct libinput_device *device,
 void
 pointer_notify_motion(struct libinput_device *device,
                      uint64_t time,
-                     double dx,
-                     double dy,
-                     double dx_unaccel,
-                     double dy_unaccel);
+                     const struct normalized_coords *delta,
+                     const struct normalized_coords *unaccel);
 
 void
 pointer_notify_motion_absolute(struct libinput_device *device,
                               uint64_t time,
-                              double x,
-                              double y);
+                              const struct device_coords *point);
 
 void
 pointer_notify_button(struct libinput_device *device,
diff --git a/src/libinput.c b/src/libinput.c
index 3317797..ea31fb8 100644
--- a/src/libinput.c
+++ b/src/libinput.c
@@ -961,10 +961,8 @@ keyboard_notify_key(struct libinput_device *device,
 void
 pointer_notify_motion(struct libinput_device *device,
                      uint64_t time,
-                     double dx,
-                     double dy,
-                     double dx_unaccel,
-                     double dy_unaccel)
+                     const struct normalized_coords *delta,
+                     const struct normalized_coords *unaccel)
 {
        struct libinput_event_pointer *motion_event;
 
@@ -974,10 +972,10 @@ pointer_notify_motion(struct libinput_device *device,
 
        *motion_event = (struct libinput_event_pointer) {
                .time = time,
-               .x = dx,
-               .y = dy,
-               .dx_unaccel = dx_unaccel,
-               .dy_unaccel = dy_unaccel,
+               .x = delta->x,
+               .y = delta->y,
+               .dx_unaccel = unaccel->x,
+               .dy_unaccel = unaccel->y,
        };
 
        post_device_event(device, time,
@@ -988,8 +986,7 @@ pointer_notify_motion(struct libinput_device *device,
 void
 pointer_notify_motion_absolute(struct libinput_device *device,
                               uint64_t time,
-                              double x,
-                              double y)
+                              const struct device_coords *point)
 {
        struct libinput_event_pointer *motion_absolute_event;
 
@@ -999,8 +996,8 @@ pointer_notify_motion_absolute(struct libinput_device 
*device,
 
        *motion_absolute_event = (struct libinput_event_pointer) {
                .time = time,
-               .x = x,
-               .y = y,
+               .x = point->x,
+               .y = point->y,
        };
 
        post_device_event(device, time,
-- 
2.1.0

_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to