summaryrefslogtreecommitdiff
path: root/src/lib/elput/Elput.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elput/Elput.h')
-rw-r--r--src/lib/elput/Elput.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/lib/elput/Elput.h b/src/lib/elput/Elput.h
index 7a05f8e795..01f649ea46 100644
--- a/src/lib/elput/Elput.h
+++ b/src/lib/elput/Elput.h
@@ -47,6 +47,8 @@ typedef struct _Elput_Pointer Elput_Pointer;
/* opaque structure to represent a touch device */
typedef struct _Elput_Touch Elput_Touch;
+typedef struct _Elput_Swipe_Gesture Elput_Swipe_Gesture;
+
/* structure to represent event for seat capability changes */
typedef struct _Elput_Event_Seat_Caps
{
@@ -202,6 +204,19 @@ EAPI int elput_shutdown(void);
EAPI Elput_Manager *elput_manager_connect(const char *seat, unsigned int tty);
/**
+ * Create an input manager on the specified seat. Only gesture events are emitted. Nothing else.
+ *
+ * @param seat
+ * @param tty
+ *
+ * @return A Elput_Manager on success, NULL on failure
+ *
+ * @ingroup Elput_Manager_Group
+ */
+EAPI Elput_Manager *elput_manager_connect_gestures(const char *seat, unsigned int tty);
+
+
+/**
* Disconnect an input manager
*
* @param manager
@@ -726,6 +741,17 @@ EAPI Eina_Stringshare *elput_seat_name_get(const Elput_Seat *seat);
* @since 1.20
*/
EAPI Elput_Manager *elput_seat_manager_get(const Elput_Seat *seat);
+
+typedef void (*Elput_Swipe_Gesture_Callback)(void *data, Elput_Device *dev, Elput_Swipe_Gesture *gesture);
+
+EAPI double elput_swipe_dx_get(Elput_Swipe_Gesture *gesture);
+EAPI double elput_swipe_dy_get(Elput_Swipe_Gesture *gesture);
+EAPI int elput_swipe_finger_count_get(Elput_Swipe_Gesture *gesture);
+EAPI void elput_manager_swipe_gesture_listen(Elput_Manager *em,
+ Elput_Swipe_Gesture_Callback begin, void *begin_data,
+ Elput_Swipe_Gesture_Callback update, void *update_data,
+ Elput_Swipe_Gesture_Callback end, void *end_data);
+
# endif
# undef EAPI