Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net>
---
 src/evdev.c            | 13 +++++--------
 src/libinput-private.h |  6 ++----
 src/libinput.c         | 23 +++++++++--------------
 3 files changed, 16 insertions(+), 26 deletions(-)

diff --git a/src/evdev.c b/src/evdev.c
index d1b0504..cab7e85 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -239,7 +239,6 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
 {
        struct libinput *libinput = device->base.seat->libinput;
        struct motion_params motion;
-       int32_t x, y;
        int slot;
        int seat_slot;
        struct libinput_device *base = &device->base;
@@ -304,7 +303,7 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
                transform_absolute(device, &point);
 
                touch_notify_touch_down(base, time, slot, seat_slot,
-                                       point.x, point.y);
+                                       &point);
                break;
        case EVDEV_ABSOLUTE_MT_MOTION:
                if (!(device->seat_caps & EVDEV_DEVICE_TOUCH))
@@ -318,7 +317,7 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
 
                transform_absolute(device, &point);
                touch_notify_touch_motion(base, time, slot, seat_slot,
-                                         point.x, point.y);
+                                         &point);
                break;
        case EVDEV_ABSOLUTE_MT_UP:
                if (!(device->seat_caps & EVDEV_DEVICE_TOUCH))
@@ -357,14 +356,11 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
                point = device->abs.point;
                transform_absolute(device, &point);
 
-               touch_notify_touch_down(base, time, -1, seat_slot,
-                                       point.x, point.y);
+               touch_notify_touch_down(base, time, -1, seat_slot, &point);
                break;
        case EVDEV_ABSOLUTE_MOTION:
                point = device->abs.point;
                transform_absolute(device, &point);
-               x = point.x;
-               y = point.y;
 
                if (device->seat_caps & EVDEV_DEVICE_TOUCH) {
                        seat_slot = device->abs.seat_slot;
@@ -372,7 +368,8 @@ evdev_flush_pending_event(struct evdev_device *device, 
uint64_t time)
                        if (seat_slot == -1)
                                break;
 
-                       touch_notify_touch_motion(base, time, -1, seat_slot, x, 
y);
+                       touch_notify_touch_motion(base, time, -1, seat_slot,
+                                                 &point);
                } else if (device->seat_caps & EVDEV_DEVICE_POINTER) {
                        pointer_notify_motion_absolute(base, time, &point);
                }
diff --git a/src/libinput-private.h b/src/libinput-private.h
index a7e0b07..91bfc37 100644
--- a/src/libinput-private.h
+++ b/src/libinput-private.h
@@ -318,16 +318,14 @@ touch_notify_touch_down(struct libinput_device *device,
                        uint64_t time,
                        int32_t slot,
                        int32_t seat_slot,
-                       double x,
-                       double y);
+                       const struct device_coords *point);
 
 void
 touch_notify_touch_motion(struct libinput_device *device,
                          uint64_t time,
                          int32_t slot,
                          int32_t seat_slot,
-                         double x,
-                         double y);
+                         const struct device_coords *point);
 
 void
 touch_notify_touch_up(struct libinput_device *device,
diff --git a/src/libinput.c b/src/libinput.c
index ea31fb8..3b1d482 100644
--- a/src/libinput.c
+++ b/src/libinput.c
@@ -75,8 +75,7 @@ struct libinput_event_touch {
        uint32_t time;
        int32_t slot;
        int32_t seat_slot;
-       double x;
-       double y;
+       struct device_coords point;
 };
 
 static void
@@ -469,7 +468,7 @@ libinput_event_touch_get_x(struct libinput_event_touch 
*event)
        struct evdev_device *device =
                (struct evdev_device *) event->base.device;
 
-       return evdev_convert_to_mm(device->abs.absinfo_x, event->x);
+       return evdev_convert_to_mm(device->abs.absinfo_x, event->point.x);
 }
 
 LIBINPUT_EXPORT double
@@ -479,7 +478,7 @@ libinput_event_touch_get_x_transformed(struct 
libinput_event_touch *event,
        struct evdev_device *device =
                (struct evdev_device *) event->base.device;
 
-       return evdev_device_transform_x(device, event->x, width);
+       return evdev_device_transform_x(device, event->point.x, width);
 }
 
 LIBINPUT_EXPORT double
@@ -489,7 +488,7 @@ libinput_event_touch_get_y_transformed(struct 
libinput_event_touch *event,
        struct evdev_device *device =
                (struct evdev_device *) event->base.device;
 
-       return evdev_device_transform_y(device, event->y, height);
+       return evdev_device_transform_y(device, event->point.y, height);
 }
 
 LIBINPUT_EXPORT double
@@ -498,7 +497,7 @@ libinput_event_touch_get_y(struct libinput_event_touch 
*event)
        struct evdev_device *device =
                (struct evdev_device *) event->base.device;
 
-       return evdev_convert_to_mm(device->abs.absinfo_y, event->y);
+       return evdev_convert_to_mm(device->abs.absinfo_y, event->point.y);
 }
 
 struct libinput_source *
@@ -1068,8 +1067,7 @@ touch_notify_touch_down(struct libinput_device *device,
                        uint64_t time,
                        int32_t slot,
                        int32_t seat_slot,
-                       double x,
-                       double y)
+                       const struct device_coords *point)
 {
        struct libinput_event_touch *touch_event;
 
@@ -1081,8 +1079,7 @@ touch_notify_touch_down(struct libinput_device *device,
                .time = time,
                .slot = slot,
                .seat_slot = seat_slot,
-               .x = x,
-               .y = y,
+               .point = *point,
        };
 
        post_device_event(device, time,
@@ -1095,8 +1092,7 @@ touch_notify_touch_motion(struct libinput_device *device,
                          uint64_t time,
                          int32_t slot,
                          int32_t seat_slot,
-                         double x,
-                         double y)
+                         const struct device_coords *point)
 {
        struct libinput_event_touch *touch_event;
 
@@ -1108,8 +1104,7 @@ touch_notify_touch_motion(struct libinput_device *device,
                .time = time,
                .slot = slot,
                .seat_slot = seat_slot,
-               .x = x,
-               .y = y,
+               .point = *point,
        };
 
        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