From 803f254343fe490d73f61404c7a0bf2d74a45194 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Wed, 12 Feb 2014 20:56:06 +0100 Subject: [PATCH] evdev: Use -1 to represent touch events slots from single touch devices MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jonas Ådahl --- src/evdev.c | 8 +++++--- src/libinput.h | 3 +++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/evdev.c b/src/evdev.c index d8dff65..3fe28e4 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -163,7 +163,7 @@ evdev_flush_pending_event(struct evdev_device *device, uint32_t time) transform_absolute(device, &cx, &cy); touch_notify_touch(base, time, - slot, + -1, li_fixed_from_int(cx), li_fixed_from_int(cy), LIBINPUT_TOUCH_TYPE_DOWN); @@ -173,7 +173,7 @@ evdev_flush_pending_event(struct evdev_device *device, uint32_t time) if (device->seat_caps & EVDEV_DEVICE_TOUCH) { touch_notify_touch(base, time, - slot, + -1, li_fixed_from_int(cx), li_fixed_from_int(cy), LIBINPUT_TOUCH_TYPE_DOWN); @@ -190,7 +190,9 @@ evdev_flush_pending_event(struct evdev_device *device, uint32_t time) touch_notify_touch(base, time, - 0, 0, 0, LIBINPUT_TOUCH_TYPE_UP); + -1, + 0, 0, + LIBINPUT_TOUCH_TYPE_UP); break; default: assert(0 && "Unknown pending event type"); diff --git a/src/libinput.h b/src/libinput.h index b5e881a..30b6011 100644 --- a/src/libinput.h +++ b/src/libinput.h @@ -558,6 +558,9 @@ libinput_event_touch_get_time(struct libinput_event_touch *event); * Get the slot of this touch event. See the kernel's multitouch * protocol B documentation for more information. * + * If the touch event has no assigned slot, for example if it is from a + * single touch device, this function returns -1. + * * @note this function should not be called for LIBINPUT_EVENT_TOUCH_FRAME. * * @return The slot of this touch event -- 2.7.4