[PATCH libinput 08/11] gestures: allow any gesture event type for gesture_get_dx/dy and get_angle
Peter Hutterer
peter.hutterer at who-t.net
Thu Jul 2 21:15:46 PDT 2015
For start/end, dx/dy is always 0.0, and there is no need to make calling this
function for start/end a caller bug. It just unnecessarily complicates the
caller's codepath.
Same for get_angle
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
src/libinput.c | 28 +++++++++++++++++++++++-----
src/libinput.h | 19 -------------------
2 files changed, 23 insertions(+), 24 deletions(-)
diff --git a/src/libinput.c b/src/libinput.c
index 93a6eb8..563ad0d 100644
--- a/src/libinput.c
+++ b/src/libinput.c
@@ -714,8 +714,12 @@ libinput_event_gesture_get_dx(struct libinput_event_gesture *event)
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
+ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN,
LIBINPUT_EVENT_GESTURE_PINCH_UPDATE,
- LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE);
+ LIBINPUT_EVENT_GESTURE_PINCH_END,
+ LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN,
+ LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE,
+ LIBINPUT_EVENT_GESTURE_SWIPE_END);
return event->delta.x;
}
@@ -726,8 +730,12 @@ libinput_event_gesture_get_dy(struct libinput_event_gesture *event)
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
+ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN,
LIBINPUT_EVENT_GESTURE_PINCH_UPDATE,
- LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE);
+ LIBINPUT_EVENT_GESTURE_PINCH_END,
+ LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN,
+ LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE,
+ LIBINPUT_EVENT_GESTURE_SWIPE_END);
return event->delta.y;
}
@@ -739,8 +747,12 @@ libinput_event_gesture_get_dx_unaccelerated(
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
+ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN,
LIBINPUT_EVENT_GESTURE_PINCH_UPDATE,
- LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE);
+ LIBINPUT_EVENT_GESTURE_PINCH_END,
+ LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN,
+ LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE,
+ LIBINPUT_EVENT_GESTURE_SWIPE_END);
return event->delta_unaccel.x;
}
@@ -752,8 +764,12 @@ libinput_event_gesture_get_dy_unaccelerated(
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
+ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN,
LIBINPUT_EVENT_GESTURE_PINCH_UPDATE,
- LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE);
+ LIBINPUT_EVENT_GESTURE_PINCH_END,
+ LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN,
+ LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE,
+ LIBINPUT_EVENT_GESTURE_SWIPE_END);
return event->delta_unaccel.y;
}
@@ -777,7 +793,9 @@ libinput_event_gesture_get_angle_delta(struct libinput_event_gesture *event)
require_event_type(libinput_event_get_context(&event->base),
event->base.type,
0.0,
- LIBINPUT_EVENT_GESTURE_PINCH_UPDATE);
+ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN,
+ LIBINPUT_EVENT_GESTURE_PINCH_UPDATE,
+ LIBINPUT_EVENT_GESTURE_PINCH_END);
return event->angle;
}
diff --git a/src/libinput.h b/src/libinput.h
index 15d70fb..d23f8fd 100644
--- a/src/libinput.h
+++ b/src/libinput.h
@@ -1017,10 +1017,6 @@ libinput_event_gesture_get_cancelled(struct libinput_event_gesture *event);
* Relative motion deltas are normalized to represent those of a device with
* 1000dpi resolution. See @ref motion_normalization for more details.
*
- * @note It is an application bug to call this function for events other than
- * @ref LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE or
- * @ref LIBINPUT_EVENT_GESTURE_PINCH_UPDATE.
- *
* @return the relative x movement since the last event
*/
double
@@ -1039,10 +1035,6 @@ libinput_event_gesture_get_dx(struct libinput_event_gesture *event);
* Relative motion deltas are normalized to represent those of a device with
* 1000dpi resolution. See @ref motion_normalization for more details.
*
- * @note It is an application bug to call this function for events other than
- * @ref LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE or
- * @ref LIBINPUT_EVENT_GESTURE_PINCH_UPDATE.
- *
* @return the relative y movement since the last event
*/
double
@@ -1061,10 +1053,6 @@ libinput_event_gesture_get_dy(struct libinput_event_gesture *event);
* details. Note that unaccelerated events are not equivalent to 'raw' events
* as read from the device.
*
- * @note It is an application bug to call this function for events other than
- * @ref LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE or
- * @ref LIBINPUT_EVENT_GESTURE_PINCH_UPDATE.
- *
* @return the unaccelerated relative x movement since the last event
*/
double
@@ -1084,10 +1072,6 @@ libinput_event_gesture_get_dx_unaccelerated(
* details. Note that unaccelerated events are not equivalent to 'raw' events
* as read from the device.
*
- * @note It is an application bug to call this function for events other than
- * @ref LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE or
- * @ref LIBINPUT_EVENT_GESTURE_PINCH_UPDATE.
- *
* @return the unaccelerated relative y movement since the last event
*/
double
@@ -1142,9 +1126,6 @@ libinput_event_gesture_get_scale(struct libinput_event_gesture *event);
* around the center of gravity. The calculation of the center of gravity is
* implementation-dependent.
*
- * @note It is an application bug to call this function for events other than
- * @ref LIBINPUT_EVENT_GESTURE_PINCH_UPDATE.
- *
* @return the angle delta since the last event
*/
double
--
2.4.3
More information about the wayland-devel
mailing list