{
if (e_input)
e_input->touch_max_count = max_count;
-}
\ No newline at end of file
+}
+
+EINTERN Eina_Bool
+e_input_relative_motion_handler_set(e_input_relative_motion_cb handler)
+{
+ if (!e_input)
+ return EINA_FALSE;
+
+ e_input->relative_motion_handler = handler;
+ return EINA_TRUE;
+}
+
+EINTERN e_input_relative_motion_cb
+e_input_relative_motion_handler_get(void)
+{
+ if (e_input)
+ return e_input->relative_motion_handler;
+
+ return NULL;
+}
typedef struct _E_Input_Seat E_Input_Seat;
typedef struct _E_Input_Coord E_Input_Coord;
+typedef void (*e_input_relative_motion_cb)(double dx[2], double dy[2], uint64_t time_us);
+
struct _E_Input
{
Ecore_Window window;
Eina_Bool use_thread : 1;
unsigned int touch_max_count;
unsigned int touch_device_count;
+
+ e_input_relative_motion_cb relative_motion_handler;
};
struct _E_Input_Device
EINTERN const char *e_input_device_output_name_get(E_Input_Device *dev, const char *input);
EINTERN Eina_Bool e_input_device_seat_name_set(E_Input_Device *dev, const char *input, const char *seat_name);
+
+EINTERN Eina_Bool e_input_relative_motion_handler_set(e_input_relative_motion_cb handler);
+EINTERN e_input_relative_motion_cb e_input_relative_motion_handler_get(void);
#endif
#endif