forked from enlightenment/efl
efl/gesture: remove 'manager' member from recognizer data struct
this can be fetched using efl_provider_find from the recognizer ref T8503 Reviewed-by: woochan lee <wc0917.lee@samsung.com> Differential Revision: https://phab.enlightenment.org/D11177
This commit is contained in:
parent
7444007fe7
commit
9691299c34
|
@ -319,7 +319,6 @@ EOLIAN static void
|
||||||
_efl_canvas_gesture_manager_recognizer_register(Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Manager_Data *pd,
|
_efl_canvas_gesture_manager_recognizer_register(Eo *obj EINA_UNUSED, Efl_Canvas_Gesture_Manager_Data *pd,
|
||||||
Efl_Canvas_Gesture_Recognizer *recognizer)
|
Efl_Canvas_Gesture_Recognizer *recognizer)
|
||||||
{
|
{
|
||||||
Efl_Canvas_Gesture_Recognizer_Data *rpd;
|
|
||||||
Efl_Canvas_Gesture *dummy = efl_gesture_recognizer_add(recognizer, NULL);
|
Efl_Canvas_Gesture *dummy = efl_gesture_recognizer_add(recognizer, NULL);
|
||||||
|
|
||||||
if (!dummy)
|
if (!dummy)
|
||||||
|
@ -329,9 +328,6 @@ _efl_canvas_gesture_manager_recognizer_register(Eo *obj EINA_UNUSED, Efl_Canvas_
|
||||||
|
|
||||||
//Add the recognizer to the m_recognizers
|
//Add the recognizer to the m_recognizers
|
||||||
eina_hash_add(pd->m_recognizers, &type, efl_ref(recognizer));
|
eina_hash_add(pd->m_recognizers, &type, efl_ref(recognizer));
|
||||||
//Update the manager
|
|
||||||
rpd = efl_data_scope_get(recognizer, EFL_CANVAS_GESTURE_RECOGNIZER_CLASS);
|
|
||||||
rpd->manager = obj;
|
|
||||||
|
|
||||||
efl_del(dummy);
|
efl_del(dummy);
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,6 @@ typedef struct _Efl_Canvas_Gesture_Touch_Data
|
||||||
|
|
||||||
struct _Efl_Canvas_Gesture_Recognizer_Data
|
struct _Efl_Canvas_Gesture_Recognizer_Data
|
||||||
{
|
{
|
||||||
Eo *manager; // keeps a reference of the manager
|
|
||||||
Eo *gesture;
|
Eo *gesture;
|
||||||
Eina_Bool continues;
|
Eina_Bool continues;
|
||||||
};
|
};
|
||||||
|
|
|
@ -23,16 +23,15 @@ _efl_canvas_gesture_recognizer_double_tap_efl_object_destructor(Eo *obj,
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_tap_timeout_cb(void *data)
|
_tap_timeout_cb(void *data)
|
||||||
{
|
{
|
||||||
Efl_Canvas_Gesture_Recognizer_Data *rd;
|
|
||||||
Efl_Canvas_Gesture_Recognizer_Double_Tap_Data *pd;
|
Efl_Canvas_Gesture_Recognizer_Double_Tap_Data *pd;
|
||||||
|
|
||||||
rd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_CLASS);
|
|
||||||
pd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_DOUBLE_TAP_CLASS);
|
pd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_DOUBLE_TAP_CLASS);
|
||||||
|
|
||||||
efl_gesture_state_set(pd->gesture, EFL_GESTURE_STATE_CANCELED);
|
efl_gesture_state_set(pd->gesture, EFL_GESTURE_STATE_CANCELED);
|
||||||
efl_event_callback_call(pd->target, EFL_EVENT_GESTURE_DOUBLE_TAP, pd->gesture);
|
efl_event_callback_call(pd->target, EFL_EVENT_GESTURE_DOUBLE_TAP, pd->gesture);
|
||||||
|
|
||||||
efl_gesture_manager_gesture_clean_up(rd->manager, pd->target, EFL_EVENT_GESTURE_DOUBLE_TAP);
|
efl_gesture_manager_gesture_clean_up(efl_provider_find(data, EFL_CANVAS_GESTURE_MANAGER_CLASS),
|
||||||
|
pd->target, EFL_EVENT_GESTURE_DOUBLE_TAP);
|
||||||
|
|
||||||
pd->timeout = NULL;
|
pd->timeout = NULL;
|
||||||
pd->tap_count = 0;
|
pd->tap_count = 0;
|
||||||
|
|
|
@ -212,7 +212,7 @@ _efl_canvas_gesture_recognizer_flick_efl_canvas_gesture_recognizer_recognize(Eo
|
||||||
//This is to handle a case with a mouse click on the target object.
|
//This is to handle a case with a mouse click on the target object.
|
||||||
if (efl_gesture_touch_state_get(event) == EFL_GESTURE_TOUCH_STATE_END && !pd->touched)
|
if (efl_gesture_touch_state_get(event) == EFL_GESTURE_TOUCH_STATE_END && !pd->touched)
|
||||||
{
|
{
|
||||||
efl_gesture_manager_gesture_clean_up(rd->manager, watched, EFL_EVENT_GESTURE_FLICK);
|
efl_gesture_manager_gesture_clean_up(efl_provider_find(obj, EFL_CANVAS_GESTURE_MANAGER_CLASS), watched, EFL_EVENT_GESTURE_FLICK);
|
||||||
dead = EINA_TRUE;
|
dead = EINA_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,16 +23,14 @@ _efl_canvas_gesture_recognizer_triple_tap_efl_object_destructor(Eo *obj,
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_tap_timeout_cb(void *data)
|
_tap_timeout_cb(void *data)
|
||||||
{
|
{
|
||||||
Efl_Canvas_Gesture_Recognizer_Data *rd;
|
|
||||||
Efl_Canvas_Gesture_Recognizer_Triple_Tap_Data *pd;
|
Efl_Canvas_Gesture_Recognizer_Triple_Tap_Data *pd;
|
||||||
|
|
||||||
rd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_CLASS);
|
|
||||||
pd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_TRIPLE_TAP_CLASS);
|
pd = efl_data_scope_get(data, EFL_CANVAS_GESTURE_RECOGNIZER_TRIPLE_TAP_CLASS);
|
||||||
|
|
||||||
efl_gesture_state_set(pd->gesture, EFL_GESTURE_STATE_CANCELED);
|
efl_gesture_state_set(pd->gesture, EFL_GESTURE_STATE_CANCELED);
|
||||||
efl_event_callback_call(pd->target, EFL_EVENT_GESTURE_TRIPLE_TAP, pd->gesture);
|
efl_event_callback_call(pd->target, EFL_EVENT_GESTURE_TRIPLE_TAP, pd->gesture);
|
||||||
|
|
||||||
efl_gesture_manager_gesture_clean_up(rd->manager, pd->target, EFL_EVENT_GESTURE_TRIPLE_TAP);
|
efl_gesture_manager_gesture_clean_up(efl_provider_find(data, EFL_CANVAS_GESTURE_MANAGER_CLASS), pd->target, EFL_EVENT_GESTURE_TRIPLE_TAP);
|
||||||
|
|
||||||
pd->timeout = NULL;
|
pd->timeout = NULL;
|
||||||
pd->tap_count = 0;
|
pd->tap_count = 0;
|
||||||
|
|
|
@ -263,7 +263,7 @@ _efl_canvas_gesture_recognizer_zoom_efl_canvas_gesture_recognizer_recognize(Eo *
|
||||||
rd->continues = EINA_FALSE;
|
rd->continues = EINA_FALSE;
|
||||||
|
|
||||||
_reset_recognizer(pd);
|
_reset_recognizer(pd);
|
||||||
efl_gesture_manager_gesture_clean_up(rd->manager, watched, EFL_EVENT_GESTURE_ZOOM);
|
efl_gesture_manager_gesture_clean_up(efl_provider_find(obj, EFL_CANVAS_GESTURE_MANAGER_CLASS), watched, EFL_EVENT_GESTURE_ZOOM);
|
||||||
|
|
||||||
return EFL_GESTURE_RECOGNIZER_RESULT_IGNORE;
|
return EFL_GESTURE_RECOGNIZER_RESULT_IGNORE;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue