gesture: Improve gesture handle callback function arguments clarity 98/314398/3
authorduna.oh <duna.oh@samsung.com>
Thu, 11 Jul 2024 07:43:26 +0000 (16:43 +0900)
committerduna.oh <duna.oh@samsung.com>
Thu, 11 Jul 2024 08:37:55 +0000 (17:37 +0900)
Since Callback function belongs to the gesture handle, not the gesture data,
remove the gesture data from the argument list.
Additionally, fix user data handling.

Change-Id: If3cc33292b871423bab263f23c96906f9ce1a606

include/efl_util.h
src/efl_util.c

index e3305c172ec733028ef271093306a356e150da5a..0f6d00c9efd2b986e2bafff10984997f261c7e7e 100644 (file)
@@ -977,10 +977,53 @@ typedef void (*efl_util_gesture_edge_drag_cb)(void *data, int mode, int fingers,
 typedef void (*efl_util_gesture_tap_cb)(void *data, int mode, int fingers, int repeats);
 typedef void (*efl_util_gesture_palm_cover_cb)(void *data, int mode, int duration, int cx, int cy, int size, double pressure);
 
-API int efl_util_gesture_edge_swipe_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_edge_swipe_cb cb_func, void *cb_data);
-API int efl_util_gesture_edge_drag_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_edge_drag_cb cb_func, void *cb_data);
-API int efl_util_gesture_tap_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_tap_cb cb_func, void *cb_data);
-API int efl_util_gesture_palm_cover_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_palm_cover_cb cb_func, void *cb_data);
+/**
+ * @brief Set edge swipe gesture callback function of given efl util gesture handle
+ * @since_tizen 7.0
+ * @param[in] gesture_h The #efl_util_gesture_h handle
+ * @param[in] cb_func   The callback function pointer
+ * @param[in] data      The data to be passed to the callback function
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #EFL_UTIL_ERROR_NONE Successful
+ * @retval #EFL_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
+ */
+API int efl_util_gesture_edge_swipe_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_edge_swipe_cb cb_func, void *data);
+
+/**
+ * @brief Set edge drag gesture callback function of given efl util gesture handle
+ * @since_tizen 7.0
+ * @param[in] gesture_h The #efl_util_gesture_h handle
+ * @param[in] cb_func   The callback function pointer
+ * @param[in] data      The data to be passed to the callback function
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #EFL_UTIL_ERROR_NONE Successful
+ * @retval #EFL_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
+ */
+API int efl_util_gesture_edge_drag_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_edge_drag_cb cb_func, void *data);
+
+/**
+ * @brief Set tap gesture callback function of given efl util gesture handle
+ * @since_tizen 7.0
+ * @param[in] gesture_h The #efl_util_gesture_h handle
+ * @param[in] cb_func   The callback function pointer
+ * @param[in] data      The data to be passed to the callback function
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #EFL_UTIL_ERROR_NONE Successful
+ * @retval #EFL_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
+ */
+API int efl_util_gesture_tap_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_tap_cb cb_func, void *data);
+
+/**
+ * @brief Set palm cover gesture callback function of given efl util gesture handle
+ * @since_tizen 7.0
+ * @param[in] gesture_h The #efl_util_gesture_h handle
+ * @param[in] cb_func   The callback function pointer
+ * @param[in] data      The data to be passed to the callback function
+ * @return @c 0 on success, otherwise a negative error value
+ * @retval #EFL_UTIL_ERROR_NONE Successful
+ * @retval #EFL_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
+ */
+API int efl_util_gesture_palm_cover_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_palm_cover_cb cb_func, void *data);
 /**
  * @}
  */
index 3f92deca3a4a6dcad4a6c36e1b5cd5c7433e5724..07b5d50a34225962a81cfa4bb32599ecf50a2383 100644 (file)
@@ -185,11 +185,26 @@ typedef struct _Efl_Util_Data_Default_Queue
          struct tizen_gesture *proto;
          int request_notified;
          int event_init;
-         efl_util_gesture_edge_swipe_cb edge_swipe_cb;
-         efl_util_gesture_edge_drag_cb edge_drag_cb;
-         efl_util_gesture_tap_cb tap_cb;
-         efl_util_gesture_palm_cover_cb palm_cover_cb;
-         void *data;
+         struct
+         {
+            efl_util_gesture_edge_swipe_cb func;
+            void *data;
+         } edge_swipe_cb;
+         struct
+         {
+            efl_util_gesture_edge_drag_cb func;
+            void *data;
+         } edge_drag_cb;
+         struct
+         {
+            efl_util_gesture_tap_cb func;
+            void *data;
+         } tap_cb;
+         struct
+         {
+            efl_util_gesture_palm_cover_cb func;
+            void *data;
+         } palm_cover_cb;
       } gesture;
    } wl;
 } Efl_Util_Data_Default_Queue;
@@ -2490,11 +2505,8 @@ _cb_gesture_edge_swipe(void *data EINA_UNUSED, struct tizen_gesture *tizen_gestu
 
    ecore_event_add(EFL_UTIL_EVENT_GESTURE_EDGE_SWIPE, ev, NULL, NULL);
 
-   if (_eflutil_defaultqueue.wl.gesture.edge_swipe_cb)
-     {
-        LOGD("edge_swipe_cb");
-        _eflutil_defaultqueue.wl.gesture.edge_swipe_cb(_eflutil_defaultqueue.wl.gesture.data, mode, fingers, sx, sy, edge);
-     }
+   if (_eflutil_defaultqueue.wl.gesture.edge_swipe_cb.func)
+     _eflutil_defaultqueue.wl.gesture.edge_swipe_cb.func(_eflutil_defaultqueue.wl.gesture.edge_swipe_cb.data, mode, fingers, sx, sy, edge);
 }
 
 static void
@@ -2522,11 +2534,8 @@ _cb_gesture_edge_drag(void *data EINA_UNUSED, struct tizen_gesture *tizen_gestur
 
    ecore_event_add(EFL_UTIL_EVENT_GESTURE_EDGE_DRAG, ev, NULL, NULL);
 
-   if (_eflutil_defaultqueue.wl.gesture.edge_drag_cb)
-     {
-        LOGD("edge_drag_cb");
-        _eflutil_defaultqueue.wl.gesture.edge_drag_cb(_eflutil_defaultqueue.wl.gesture.data, mode, fingers, cx, cy, edge);
-     }
+   if (_eflutil_defaultqueue.wl.gesture.edge_drag_cb.func)
+     _eflutil_defaultqueue.wl.gesture.edge_drag_cb.func(_eflutil_defaultqueue.wl.gesture.edge_drag_cb.data, mode, fingers, cx, cy, edge);
 }
 
 static void
@@ -2552,11 +2561,8 @@ _cb_gesture_tap(void *data EINA_UNUSED, struct tizen_gesture *tizen_gesture EINA
 
    ecore_event_add(EFL_UTIL_EVENT_GESTURE_TAP, ev, NULL, NULL);
 
-   if (_eflutil_defaultqueue.wl.gesture.tap_cb)
-     {
-        LOGD("tap_cb");
-        _eflutil_defaultqueue.wl.gesture.tap_cb(_eflutil_defaultqueue.wl.gesture.data, mode, fingers, repeats);
-     }
+   if (_eflutil_defaultqueue.wl.gesture.tap_cb.func)
+     _eflutil_defaultqueue.wl.gesture.tap_cb.func(_eflutil_defaultqueue.wl.gesture.tap_cb.data, mode, fingers, repeats);
 }
 /* LCOV_EXCL_STOP */
 
@@ -2587,11 +2593,8 @@ _cb_gesture_palm_cover(void *data EINA_UNUSED, struct tizen_gesture *tizen_gestu
 
    ecore_event_add(EFL_UTIL_EVENT_GESTURE_PALM_COVER, ev, NULL, NULL);
 
-   if (_eflutil_defaultqueue.wl.gesture.palm_cover_cb)
-     {
-        LOGD("palm_cover_cb");
-        _eflutil_defaultqueue.wl.gesture.palm_cover_cb(_eflutil_defaultqueue.wl.gesture.data, mode, duration, cx, cy, size, pressure);
-     }
+   if (_eflutil_defaultqueue.wl.gesture.palm_cover_cb.func)
+     _eflutil_defaultqueue.wl.gesture.palm_cover_cb.func(_eflutil_defaultqueue.wl.gesture.palm_cover_cb.data, mode, duration, cx, cy, size, pressure);
 }
 /* LCOV_EXCL_STOP */
 
@@ -3280,81 +3283,58 @@ efl_util_gesture_activate_set_on_window(efl_util_gesture_h gesture_h, Evas_Objec
    return ret;
 }
 
-API int efl_util_gesture_edge_swipe_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_edge_swipe_cb cb_func, void *cb_data)
+API int efl_util_gesture_edge_swipe_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_edge_swipe_cb cb_func, void *data)
 {
    LOGD("");
    int ret = EFL_UTIL_ERROR_NONE;
-   Efl_Util_Gesture_Common_Grab_Data *base_data = NULL;
-
-   base_data = (Efl_Util_Gesture_Common_Grab_Data *)data;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(gesture_h, EFL_UTIL_ERROR_INVALID_PARAMETER);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(gesture_h->init, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(base_data, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(base_data->type == TIZEN_GESTURE_TYPE_EDGE_SWIPE,
-                                  EFL_UTIL_ERROR_INVALID_PARAMETER);
 
-   _eflutil_defaultqueue.wl.gesture.edge_swipe_cb = cb_func;
-   _eflutil_defaultqueue.wl.gesture.data = cb_data;
+   _eflutil_defaultqueue.wl.gesture.edge_swipe_cb.func = cb_func;
+   _eflutil_defaultqueue.wl.gesture.edge_swipe_cb.data = data;
 
    return ret;
 }
-API int efl_util_gesture_edge_drag_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_edge_drag_cb cb_func, void *cb_data)
+
+API int efl_util_gesture_edge_drag_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_edge_drag_cb cb_func, void *data)
 {
    LOGD("");
    int ret = EFL_UTIL_ERROR_NONE;
-   Efl_Util_Gesture_Common_Grab_Data *base_data = NULL;
-
-   base_data = (Efl_Util_Gesture_Common_Grab_Data *)data;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(gesture_h, EFL_UTIL_ERROR_INVALID_PARAMETER);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(gesture_h->init, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(base_data, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(base_data->type == TIZEN_GESTURE_TYPE_EDGE_DRAG,
-                                  EFL_UTIL_ERROR_INVALID_PARAMETER);
 
-   _eflutil_defaultqueue.wl.gesture.edge_drag_cb = cb_func;
-   _eflutil_defaultqueue.wl.gesture.data = cb_data;
+   _eflutil_defaultqueue.wl.gesture.edge_drag_cb.func = cb_func;
+   _eflutil_defaultqueue.wl.gesture.edge_drag_cb.data = data;
 
    return ret;
 }
-API int efl_util_gesture_tap_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_tap_cb cb_func, void *cb_data)
+
+API int efl_util_gesture_tap_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_tap_cb cb_func, void *data)
 {
    LOGD("");
    int ret = EFL_UTIL_ERROR_NONE;
-   Efl_Util_Gesture_Common_Grab_Data *base_data = NULL;
-
-   base_data = (Efl_Util_Gesture_Common_Grab_Data *)data;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(gesture_h, EFL_UTIL_ERROR_INVALID_PARAMETER);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(gesture_h->init, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(base_data, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(base_data->type == TIZEN_GESTURE_TYPE_TAP,
-                                  EFL_UTIL_ERROR_INVALID_PARAMETER);
 
-   _eflutil_defaultqueue.wl.gesture.tap_cb = cb_func;
-   _eflutil_defaultqueue.wl.gesture.data = cb_data;
+   _eflutil_defaultqueue.wl.gesture.tap_cb.func = cb_func;
+   _eflutil_defaultqueue.wl.gesture.tap_cb.data = data;
 
    return ret;
 }
 
-
-API int efl_util_gesture_palm_cover_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_data data, efl_util_gesture_palm_cover_cb cb_func, void *cb_data)
+API int efl_util_gesture_palm_cover_cb_set(efl_util_gesture_h gesture_h, efl_util_gesture_palm_cover_cb cb_func, void *data)
 {
    LOGD("");
    int ret = EFL_UTIL_ERROR_NONE;
-   Efl_Util_Gesture_Common_Grab_Data *base_data = NULL;
-
-   base_data = (Efl_Util_Gesture_Common_Grab_Data *)data;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(gesture_h, EFL_UTIL_ERROR_INVALID_PARAMETER);
    EINA_SAFETY_ON_FALSE_RETURN_VAL(gesture_h->init, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(base_data, EFL_UTIL_ERROR_INVALID_PARAMETER);
-   EINA_SAFETY_ON_FALSE_RETURN_VAL(base_data->type == TIZEN_GESTURE_TYPE_PALM_COVER,
-                                  EFL_UTIL_ERROR_INVALID_PARAMETER);
 
-   _eflutil_defaultqueue.wl.gesture.palm_cover_cb = cb_func;
-   _eflutil_defaultqueue.wl.gesture.data = cb_data;
+   _eflutil_defaultqueue.wl.gesture.palm_cover_cb.func = cb_func;
+   _eflutil_defaultqueue.wl.gesture.palm_cover_cb.data = data;
 
    return ret;
-}
\ No newline at end of file
+}