From 28b7ea6f0cc8c45674aca2db27361c9064bd53d1 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 31 Jan 2020 10:44:23 -0500 Subject: [PATCH] efl/gesture: rework gesture_recognizer::add to be a 'type' property this simplifies (and optimizes) a bunch of code by letting gesture recognizers return directly the type of gesture they recognize for use internally ref T8503 Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D11267 --- .../evas/gesture/efl_canvas_gesture_manager.c | 81 ++++++++++++++----- .../gesture/efl_canvas_gesture_recognizer.eo | 10 +-- .../efl_canvas_gesture_recognizer_custom.c | 5 ++ .../efl_canvas_gesture_recognizer_custom.eo | 1 + ...efl_canvas_gesture_recognizer_double_tap.c | 6 +- ...fl_canvas_gesture_recognizer_double_tap.eo | 2 +- .../efl_canvas_gesture_recognizer_flick.c | 6 +- .../efl_canvas_gesture_recognizer_flick.eo | 2 +- .../efl_canvas_gesture_recognizer_long_tap.c | 8 +- .../efl_canvas_gesture_recognizer_long_tap.eo | 2 +- .../efl_canvas_gesture_recognizer_momentum.c | 6 +- .../efl_canvas_gesture_recognizer_momentum.eo | 2 +- .../efl_canvas_gesture_recognizer_tap.c | 8 +- .../efl_canvas_gesture_recognizer_tap.eo | 2 +- ...efl_canvas_gesture_recognizer_triple_tap.c | 6 +- ...fl_canvas_gesture_recognizer_triple_tap.eo | 2 +- .../efl_canvas_gesture_recognizer_zoom.c | 8 +- .../efl_canvas_gesture_recognizer_zoom.eo | 2 +- src/tests/elementary/custom_recognizer.c | 6 -- src/tests/elementary/custom_recognizer.eo | 1 - src/tests/elementary/custom_recognizer2.c | 6 -- src/tests/elementary/custom_recognizer2.eo | 1 - 22 files changed, 100 insertions(+), 73 deletions(-) diff --git a/src/lib/evas/gesture/efl_canvas_gesture_manager.c b/src/lib/evas/gesture/efl_canvas_gesture_manager.c index 9bed44dd97..d0b8907b2a 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_manager.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_manager.c @@ -36,6 +36,63 @@ static Efl_Canvas_Gesture * _get_state(Efl_Canvas_Gesture_Manager_Data *pd, Eo *target, Efl_Canvas_Gesture_Recognizer *recognizer, const Efl_Event_Description *type); +static const Efl_Event_Description * +_gesture_recognizer_event_type_get(const Efl_Canvas_Gesture_Recognizer *recognizer) +{ + Efl_Canvas_Gesture_Recognizer_Type type = efl_gesture_recognizer_type_get(recognizer); + + switch (type) + { + case EFL_GESTURE_RECOGNIZER_TYPE_TAP: + return EFL_EVENT_GESTURE_TAP; + case EFL_GESTURE_RECOGNIZER_TYPE_DOUBLETAP: + return EFL_EVENT_GESTURE_DOUBLE_TAP; + case EFL_GESTURE_RECOGNIZER_TYPE_TRIPLETAP: + return EFL_EVENT_GESTURE_TRIPLE_TAP; + case EFL_GESTURE_RECOGNIZER_TYPE_LONGTAP: + return EFL_EVENT_GESTURE_LONG_TAP; + case EFL_GESTURE_RECOGNIZER_TYPE_MOMENTUM: + return EFL_EVENT_GESTURE_MOMENTUM; + case EFL_GESTURE_RECOGNIZER_TYPE_FLICK: + return EFL_EVENT_GESTURE_FLICK; + case EFL_GESTURE_RECOGNIZER_TYPE_ZOOM: + return EFL_EVENT_GESTURE_ZOOM; + case EFL_GESTURE_RECOGNIZER_TYPE_CUSTOM: + return EFL_EVENT_GESTURE_CUSTOM; + default: break; + } + return NULL; +} + +static const Efl_Class * +_gesture_recognizer_class_type_get(const Efl_Canvas_Gesture_Recognizer *recognizer) +{ + Efl_Canvas_Gesture_Recognizer_Type type = efl_gesture_recognizer_type_get(recognizer); + + switch (type) + { + case EFL_GESTURE_RECOGNIZER_TYPE_TAP: + return EFL_CANVAS_GESTURE_TAP_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_DOUBLETAP: + return EFL_CANVAS_GESTURE_DOUBLE_TAP_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_TRIPLETAP: + return EFL_CANVAS_GESTURE_TRIPLE_TAP_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_LONGTAP: + return EFL_CANVAS_GESTURE_LONG_TAP_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_MOMENTUM: + return EFL_CANVAS_GESTURE_MOMENTUM_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_FLICK: + return EFL_CANVAS_GESTURE_FLICK_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_ZOOM: + return EFL_CANVAS_GESTURE_ZOOM_CLASS; + case EFL_GESTURE_RECOGNIZER_TYPE_CUSTOM: + return EFL_CANVAS_GESTURE_CUSTOM_CLASS; + default: break; + } + return NULL; +} + + static void _cleanup_object(Eina_Array *arr) { @@ -335,13 +392,7 @@ EOLIAN static void _efl_canvas_gesture_manager_recognizer_register(Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Manager_Data *pd, Efl_Canvas_Gesture_Recognizer *recognizer) { - Efl_Canvas_Gesture *dummy = efl_gesture_recognizer_add(recognizer, NULL); - - if (!dummy) - return; - - const Efl_Event_Description *type = _efl_gesture_type_get(dummy); - efl_del(dummy); + const Efl_Event_Description *type = _gesture_recognizer_event_type_get(recognizer); //Add the recognizer to the m_recognizers if (type == EFL_EVENT_GESTURE_CUSTOM) { @@ -363,16 +414,11 @@ _efl_canvas_gesture_manager_recognizer_unregister(Eo *obj EINA_UNUSED, Efl_Canva Eina_List *l, *l_next; Object_Gesture *object_gesture; const Efl_Event_Description *type; - Efl_Canvas_Gesture *dummy; if (!recognizer) return; //Find the type of the recognizer - dummy = efl_gesture_recognizer_add(recognizer, 0); - if (!dummy) return; - - type = _efl_gesture_type_get(dummy); - efl_del(dummy); + type = _gesture_recognizer_event_type_get(recognizer); //Check if its already registered if (type == EFL_EVENT_GESTURE_CUSTOM) { @@ -457,7 +503,7 @@ _get_state(Efl_Canvas_Gesture_Manager_Data *pd, } } - gesture = efl_gesture_recognizer_add(recognizer, target); + gesture = efl_add(_gesture_recognizer_class_type_get(recognizer), recognizer); if (!gesture) return 0; @@ -497,16 +543,11 @@ EOLIAN static void _efl_canvas_gesture_manager_recognizer_cleanup(Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Manager_Data *pd, const Efl_Canvas_Gesture_Recognizer *recognizer, const Eo *target) { const Efl_Event_Description *type; - Efl_Canvas_Gesture *dummy; EINA_SAFETY_ON_NULL_RETURN(recognizer); //Find the type of the recognizer - dummy = efl_gesture_recognizer_add((void*)recognizer, 0); - EINA_SAFETY_ON_NULL_RETURN(dummy); - - type = _efl_gesture_type_get(dummy); - efl_del(dummy); + type = _gesture_recognizer_event_type_get(recognizer); _cleanup_cached_gestures(pd, target, type, recognizer); eina_hash_del(pd->m_object_events, &recognizer, NULL); _cleanup_object(pd->m_gestures_to_delete); diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer.eo index 4f5ee45043..b27178de09 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer.eo @@ -13,12 +13,12 @@ abstract @beta Efl.Canvas.Gesture_Recognizer extends Efl.Object ]] c_prefix: efl_gesture_recognizer; methods { - add @pure_virtual { - [[This function is called to create a new @Efl.Canvas.Gesture object for the given target.]] - params { - @in target: Efl.Object; [[The target canvas object.]] + @property type @pure_virtual { + [[This property returns the type of gesture recognized by this recognizer.]] + get {} + values { + type: Efl.Canvas.Gesture_Recognizer_Type; [[The gesture type to recognize.]] } - return: Efl.Canvas.Gesture; [[Returns the gesture object that will be used to track this gesture.]] } recognize @pure_virtual { [[Analyzes the given $event and the current state of the $gesture object to see if the state diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.c index 8900abe71a..4dfe56944a 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.c @@ -2,6 +2,11 @@ #define MY_CLASS EFL_CANVAS_GESTURE_RECOGNIZER_CUSTOM_CLASS +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_custom_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Custom_Data *pd EINA_UNUSED) +{ + return EFL_GESTURE_RECOGNIZER_TYPE_CUSTOM; +} EOLIAN static Eo * _efl_canvas_gesture_recognizer_custom_efl_object_finalize(Eo *obj, Efl_Canvas_Gesture_Recognizer_Custom_Data *pd) diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.eo index f691694e8c..1254d29b03 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_custom.eo @@ -19,5 +19,6 @@ abstract @beta Efl.Canvas.Gesture_Recognizer_Custom extends Efl.Canvas.Gesture_R implements { Efl.Object.destructor; Efl.Object.finalize; + Efl.Canvas.Gesture_Recognizer.type { get; } } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.c index 886d17f790..e1a7b7fff3 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.c @@ -4,10 +4,10 @@ #define TAP_TIME_OUT 0.33 -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_double_tap_efl_canvas_gesture_recognizer_add(Eo *obj, Efl_Canvas_Gesture_Recognizer_Double_Tap_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_double_tap_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Double_Tap_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_DOUBLE_TAP_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_DOUBLETAP; } EOLIAN static void diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.eo index de229b7147..1865242885 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_double_tap.eo @@ -19,7 +19,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Double_Tap extends Efl.Canvas.Gesture_ } implements { Efl.Object.destructor; - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.c index 90ecee66bd..80abac6eb6 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.c @@ -22,10 +22,10 @@ _reset_recognizer(Efl_Canvas_Gesture_Recognizer_Flick_Data *pd) pd->touched = EINA_FALSE; } -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_flick_efl_canvas_gesture_recognizer_add(Eo *obj, Efl_Canvas_Gesture_Recognizer_Flick_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_flick_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Flick_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_FLICK_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_FLICK; } static void diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.eo index 5f038f1a17..afb9cceb3e 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_flick.eo @@ -6,7 +6,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Flick extends Efl.Canvas.Gesture_Recog ]] c_prefix: efl_gesture_recognizer_flick; implements { - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.c index 86879037bc..83be3ea696 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.c @@ -4,12 +4,10 @@ #define EFL_GESTURE_LONG_TAP_TIME_OUT 1.2 -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_long_tap_efl_canvas_gesture_recognizer_add(Eo *obj, - Efl_Canvas_Gesture_Recognizer_Long_Tap_Data *pd EINA_UNUSED, - Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_long_tap_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Long_Tap_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_LONG_TAP_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_LONGTAP; } EOLIAN static void diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.eo index d18d2c236f..c0a08baeaa 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_long_tap.eo @@ -19,7 +19,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Long_Tap extends Efl.Canvas.Gesture_Re } implements { Efl.Object.destructor; - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; Efl.Canvas.Gesture_Recognizer.reset; } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.c index d1ea879ae7..f6cc9a1ebe 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.c @@ -7,10 +7,10 @@ #define THUMBSCROLL_MOMENTUM_THRESHOLD 100.0 #define EFL_GESTURE_MINIMUM_MOMENTUM 0.001 -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_momentum_efl_canvas_gesture_recognizer_add(Eo *obj, Efl_Canvas_Gesture_Recognizer_Momentum_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_momentum_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Momentum_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_MOMENTUM_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_MOMENTUM; } static void diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.eo index 1713fb4f68..6093fbdcbd 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_momentum.eo @@ -6,7 +6,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Momentum extends Efl.Canvas.Gesture_Re ]] c_prefix: efl_gesture_recognizer_momentum; implements { - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.c index e63a9a5c02..e0b2c342cd 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.c @@ -6,12 +6,10 @@ // may using dobule tap timeout value? #define EFL_GESTURE_RECOGNIZER_TYPE_TAP_TIME_OUT 0.33 -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_tap_efl_canvas_gesture_recognizer_add(Eo *obj, - Efl_Canvas_Gesture_Recognizer_Tap_Data *pd EINA_UNUSED, - Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_tap_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Tap_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_TAP_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_TAP; } static Eina_Bool diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.eo index 26aeb83a4d..b951013c2a 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_tap.eo @@ -6,7 +6,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Tap extends Efl.Canvas.Gesture_Recogni ]] c_prefix: efl_gesture_recognizer_tap; implements { - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.c index 6d4d54962f..3dbd61b760 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.c @@ -4,10 +4,10 @@ #define TAP_TIME_OUT 0.33 -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_triple_tap_efl_canvas_gesture_recognizer_add(Eo *obj, Efl_Canvas_Gesture_Recognizer_Triple_Tap_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_triple_tap_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Triple_Tap_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_TRIPLE_TAP_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_TRIPLETAP; } EOLIAN static void diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.eo index 99458938fa..11d7e9e1e0 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_triple_tap.eo @@ -19,7 +19,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Triple_Tap extends Efl.Canvas.Gesture_ } implements { Efl.Object.destructor; - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.c b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.c index 9190302d47..c33b4d7602 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.c +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.c @@ -125,12 +125,10 @@ _zoom_compute(Efl_Canvas_Gesture_Recognizer_Zoom_Data *pd, return rt; } -EOLIAN static Efl_Canvas_Gesture * -_efl_canvas_gesture_recognizer_zoom_efl_canvas_gesture_recognizer_add(Eo *obj, - Efl_Canvas_Gesture_Recognizer_Zoom_Data *pd EINA_UNUSED, - Efl_Object *target EINA_UNUSED) +EOLIAN static Efl_Canvas_Gesture_Recognizer_Type +_efl_canvas_gesture_recognizer_zoom_efl_canvas_gesture_recognizer_type_get(const Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Recognizer_Zoom_Data *pd EINA_UNUSED) { - return efl_add(EFL_CANVAS_GESTURE_ZOOM_CLASS, obj); + return EFL_GESTURE_RECOGNIZER_TYPE_ZOOM; } EOLIAN static Efl_Canvas_Gesture_Recognizer_Result diff --git a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.eo b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.eo index a07e112d87..8ada83abb3 100644 --- a/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.eo +++ b/src/lib/evas/gesture/efl_canvas_gesture_recognizer_zoom.eo @@ -6,7 +6,7 @@ class @beta Efl.Canvas.Gesture_Recognizer_Zoom extends Efl.Canvas.Gesture_Recogn ]] c_prefix: efl_gesture_recognizer_zoom; implements { - Efl.Canvas.Gesture_Recognizer.add; + Efl.Canvas.Gesture_Recognizer.type { get; } Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/tests/elementary/custom_recognizer.c b/src/tests/elementary/custom_recognizer.c index 904fd2fd8f..5e4c89c791 100644 --- a/src/tests/elementary/custom_recognizer.c +++ b/src/tests/elementary/custom_recognizer.c @@ -14,12 +14,6 @@ _custom_recognizer_efl_object_finalize(Eo *obj, Custom_Recognizer_Data *pd EINA_ return efl_finalize(efl_super(obj, MY_CLASS)); } -EOLIAN static Efl_Canvas_Gesture * -_custom_recognizer_efl_canvas_gesture_recognizer_add(Eo *obj, Custom_Recognizer_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) -{ - return efl_add(EFL_CANVAS_GESTURE_CUSTOM_CLASS, obj); -} - EOLIAN static Efl_Canvas_Gesture_Recognizer_Result _custom_recognizer_efl_canvas_gesture_recognizer_recognize(Eo *obj EINA_UNUSED, Custom_Recognizer_Data *pd EINA_UNUSED, Efl_Canvas_Gesture *gesture EINA_UNUSED, Efl_Object *watched EINA_UNUSED, diff --git a/src/tests/elementary/custom_recognizer.eo b/src/tests/elementary/custom_recognizer.eo index 0f0b69ef35..7c6ab18d41 100644 --- a/src/tests/elementary/custom_recognizer.eo +++ b/src/tests/elementary/custom_recognizer.eo @@ -5,7 +5,6 @@ class @beta Custom_Recognizer extends Efl.Canvas.Gesture_Recognizer_Custom c_prefix: custom_recognizer; implements { Efl.Object.finalize; - Efl.Canvas.Gesture_Recognizer.add; Efl.Canvas.Gesture_Recognizer.recognize; } } diff --git a/src/tests/elementary/custom_recognizer2.c b/src/tests/elementary/custom_recognizer2.c index 1f005a7ebe..bea860637e 100644 --- a/src/tests/elementary/custom_recognizer2.c +++ b/src/tests/elementary/custom_recognizer2.c @@ -13,12 +13,6 @@ _custom_recognizer2_efl_object_finalize(Eo *obj, Custom_Recognizer2_Data *pd EIN return efl_finalize(efl_super(obj, MY_CLASS)); } -EOLIAN static Efl_Canvas_Gesture * -_custom_recognizer2_efl_canvas_gesture_recognizer_add(Eo *obj, Custom_Recognizer2_Data *pd EINA_UNUSED, Efl_Object *target EINA_UNUSED) -{ - return efl_add(EFL_CANVAS_GESTURE_CUSTOM_CLASS, obj); -} - EOLIAN static Efl_Canvas_Gesture_Recognizer_Result _custom_recognizer2_efl_canvas_gesture_recognizer_recognize(Eo *obj EINA_UNUSED, Custom_Recognizer2_Data *pd EINA_UNUSED, Efl_Canvas_Gesture *gesture EINA_UNUSED, Efl_Object *watched EINA_UNUSED, diff --git a/src/tests/elementary/custom_recognizer2.eo b/src/tests/elementary/custom_recognizer2.eo index 721c92af7f..35c97d9d61 100644 --- a/src/tests/elementary/custom_recognizer2.eo +++ b/src/tests/elementary/custom_recognizer2.eo @@ -5,7 +5,6 @@ class @beta Custom_Recognizer2 extends Efl.Canvas.Gesture_Recognizer_Custom c_prefix: custom_recognizer2; implements { Efl.Object.finalize; - Efl.Canvas.Gesture_Recognizer.add; Efl.Canvas.Gesture_Recognizer.recognize; } }