summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunsuChoi <jsuya.choi@samsung.com>2020-03-24 21:00:26 +0900
committerHermet Park <chuneon.park@samsung.com>2020-03-24 21:00:26 +0900
commit6f95a42f602e5f0abb81dd42b7b7b3cfbdcf2336 (patch)
treeed1c5520fbe2087c7ebca98fed53ac96dea98ffa
parent912fbe79a2f3ee56f0e2c5e1fe5270cc12d64227 (diff)
downloadefl-6f95a42f602e5f0abb81dd42b7b7b3cfbdcf2336.tar.gz
elm_transit: replace evas_object_event_callback_xxx with efl_event_callback_xxx
Summary: In transit, event_callback is mainly used for delete callback. transit uses evas_object_freeze_events_set to control the user's mouse events. However, EVAS_CALLBACK_DEL was not called because of this. The behavior of evas_object_freeze_event was changed. This patch was created to fix some issues. Test Plan: N/A Reviewers: Hermet, kimcinoo, herb Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11562
-rw-r--r--src/lib/elementary/elm_transit.c109
1 files changed, 57 insertions, 52 deletions
diff --git a/src/lib/elementary/elm_transit.c b/src/lib/elementary/elm_transit.c
index 590c416535..14785eaa62 100644
--- a/src/lib/elementary/elm_transit.c
+++ b/src/lib/elementary/elm_transit.c
@@ -104,7 +104,7 @@ typedef struct _Elm_Transit_Obj_Data Elm_Transit_Obj_Data;
static void _transit_obj_data_save(Evas_Object *obj);
static void _transit_obj_data_recover(Elm_Transit *transit, Evas_Object *obj);
-static void _transit_obj_remove_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED);
+static void _transit_obj_remove_cb(void *data, const Efl_Event *ev);
static void _transit_obj_remove(Elm_Transit *transit, Evas_Object *obj);
static void _transit_effect_del(Elm_Transit *transit, Elm_Transit_Effect_Module *effect_module);
static void _transit_remove_dead_effects(Elm_Transit *transit);
@@ -161,15 +161,16 @@ _remove_obj_from_list(Elm_Transit *transit, Evas_Object *obj)
if (!eina_list_data_find_list(transit->objs, obj))
break;
transit->objs = eina_list_remove(transit->objs, obj);
- evas_object_event_callback_del_full(obj, EVAS_CALLBACK_DEL,
- _transit_obj_remove_cb,
- transit);
+ efl_event_callback_del(obj, EFL_EVENT_DEL,
+ _transit_obj_remove_cb,
+ transit);
}
}
static void
-_transit_obj_remove_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+_transit_obj_remove_cb(void *data, const Efl_Event *ev)
{
+ Eo* obj = ev->object;
Elm_Transit *transit = data;
Elm_Transit_Obj_Data *obj_data = evas_object_data_get(obj, _transit_key);
if (obj_data)
@@ -660,9 +661,9 @@ elm_transit_object_add(Elm_Transit *transit, Evas_Object *obj)
}
}
- evas_object_event_callback_add(obj, EVAS_CALLBACK_DEL,
- _transit_obj_remove_cb,
- transit);
+ efl_event_callback_add(obj, EFL_EVENT_DEL,
+ _transit_obj_remove_cb,
+ transit);
transit->objs = eina_list_append(transit->objs, obj);
}
@@ -1124,8 +1125,9 @@ struct _Elm_Transit_Effect_Translation
};
static void
-_translation_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+_translation_object_del_cb(void *data, const Efl_Event *ev)
{
+ Eo* obj = ev->object;
Elm_Transit_Effect_Translation *translation = data;
Eina_List *elist;
Elm_Transit_Effect_Translation_Node *translation_node;
@@ -1160,8 +1162,8 @@ _translation_nodes_build(Elm_Transit *transit, Elm_Transit_Effect_Translation *t
evas_object_geometry_get(obj, &(translation_node->x),
&(translation_node->y), NULL, NULL);
data_list = eina_list_append(data_list, translation_node);
- evas_object_event_callback_add(obj, EVAS_CALLBACK_DEL,
- _translation_object_del_cb, translation);
+ efl_event_callback_add(obj, EFL_EVENT_DEL,
+ _translation_object_del_cb, translation);
}
return data_list;
}
@@ -1177,8 +1179,8 @@ _transit_effect_translation_context_free(Elm_Transit_Effect *effect, Elm_Transit
EINA_LIST_FOREACH_SAFE(translation->nodes,
elist, elist_next, translation_node)
{
- evas_object_event_callback_del(translation_node->obj,
- EVAS_CALLBACK_DEL, _translation_object_del_cb);
+ efl_event_callback_del(translation_node->obj,
+ EFL_EVENT_DEL, _translation_object_del_cb, translation);
translation->nodes = eina_list_remove_list(translation->nodes, elist);
free(translation_node);
}
@@ -1512,8 +1514,9 @@ struct _Elm_Transit_Effect_Resizable_Flip
};
static void
-_resizable_flip_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+_resizable_flip_object_del_cb(void *data, const Efl_Event *ev)
{
+ Eo* obj = ev->object;
Elm_Transit_Effect_ResizableFlip *resizable_flip = data;
Eina_List *elist;
Elm_Transit_Effect_ResizableFlip_Node *resizable_flip_node;
@@ -1521,11 +1524,11 @@ _resizable_flip_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj,
EINA_LIST_FOREACH(resizable_flip->nodes, elist, resizable_flip_node)
{
if (resizable_flip_node->front == obj)
- evas_object_event_callback_del(resizable_flip_node->back,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb);
+ efl_event_callback_del(resizable_flip_node->back,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
else if (resizable_flip_node->back == obj)
- evas_object_event_callback_del(resizable_flip_node->front,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb);
+ efl_event_callback_del(resizable_flip_node->front,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
else continue;
resizable_flip->nodes = eina_list_remove_list(resizable_flip->nodes,
@@ -1574,10 +1577,10 @@ _resizable_flip_nodes_build(Elm_Transit *transit, Elm_Transit_Effect_ResizableFl
data_list = eina_list_append(data_list, resizable_flip_node);
- evas_object_event_callback_add(resizable_flip_node->back,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb, resizable_flip);
- evas_object_event_callback_add(resizable_flip_node->front,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb, resizable_flip);
+ efl_event_callback_add(resizable_flip_node->back,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
+ efl_event_callback_add(resizable_flip_node->front,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
}
return data_list;
@@ -1651,10 +1654,10 @@ _transit_effect_resizable_flip_context_free(Elm_Transit_Effect *effect, Elm_Tran
resizable_flip->nodes = eina_list_remove_list(resizable_flip->nodes,
elist);
- evas_object_event_callback_del(resizable_flip_node->back,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb);
- evas_object_event_callback_del(resizable_flip_node->front,
- EVAS_CALLBACK_DEL, _resizable_flip_object_del_cb);
+ efl_event_callback_del(resizable_flip_node->back,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
+ efl_event_callback_del(resizable_flip_node->front,
+ EFL_EVENT_DEL, _resizable_flip_object_del_cb, resizable_flip);
free(resizable_flip_node);
}
free(resizable_flip);
@@ -2124,8 +2127,9 @@ struct _Elm_Transit_Effect_Fade
};
static void
-_fade_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+_fade_object_del_cb(void *data, const Efl_Event *ev)
{
+ Eo* obj = ev->object;
Elm_Transit_Effect_Fade *fade = data;
Eina_List *elist;
Elm_Transit_Effect_Fade_Node *fade_node;
@@ -2133,11 +2137,11 @@ _fade_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *eve
EINA_LIST_FOREACH(fade->nodes, elist, fade_node)
{
if (fade_node->before == obj)
- evas_object_event_callback_del(fade_node->after,
- EVAS_CALLBACK_DEL, _fade_object_del_cb);
+ efl_event_callback_del(fade_node->after,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade);
else if (fade_node->after == obj)
- evas_object_event_callback_del(fade_node->before,
- EVAS_CALLBACK_DEL, _fade_object_del_cb);
+ efl_event_callback_del(fade_node->before,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade);
else continue;
fade->nodes = eina_list_remove_list(fade->nodes, elist);
@@ -2178,10 +2182,10 @@ _fade_nodes_build(Elm_Transit *transit, Elm_Transit_Effect_Fade *fade_data)
data_list = eina_list_append(data_list, fade);
- evas_object_event_callback_add(fade->before,
- EVAS_CALLBACK_DEL, _fade_object_del_cb, fade_data);
- evas_object_event_callback_add(fade->after,
- EVAS_CALLBACK_DEL, _fade_object_del_cb, fade_data);
+ efl_event_callback_add(fade->before,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade_data);
+ efl_event_callback_add(fade->after,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade_data);
}
return data_list;
}
@@ -2206,10 +2210,10 @@ _transit_effect_fade_context_free(Elm_Transit_Effect *effect, Elm_Transit *trans
fade_node->after_color.a);
fade->nodes = eina_list_remove_list(fade->nodes, elist);
- evas_object_event_callback_del(fade_node->before,
- EVAS_CALLBACK_DEL, _fade_object_del_cb);
- evas_object_event_callback_del(fade_node->after,
- EVAS_CALLBACK_DEL, _fade_object_del_cb);
+ efl_event_callback_del(fade_node->before,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade);
+ efl_event_callback_del(fade_node->after,
+ EFL_EVENT_DEL, _fade_object_del_cb, fade);
free(fade_node);
}
@@ -2315,8 +2319,9 @@ struct _Elm_Transit_Effect_Blend
};
static void
-_blend_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED)
+_blend_object_del_cb(void *data, const Efl_Event *ev)
{
+ Eo* obj = ev->object;
Elm_Transit_Effect_Blend *blend = data;
Eina_List *elist;
Elm_Transit_Effect_Blend_Node *blend_node;
@@ -2324,11 +2329,11 @@ _blend_object_del_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void *ev
EINA_LIST_FOREACH(blend->nodes, elist, blend_node)
{
if (blend_node->after == obj)
- evas_object_event_callback_del(blend_node->before,
- EVAS_CALLBACK_DEL, _blend_object_del_cb);
+ efl_event_callback_del(blend_node->before,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
else if (blend_node->before == obj)
- evas_object_event_callback_del(blend_node->after,
- EVAS_CALLBACK_DEL, _blend_object_del_cb);
+ efl_event_callback_del(blend_node->after,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
else continue;
blend->nodes = eina_list_remove_list(blend->nodes, elist);
@@ -2368,10 +2373,10 @@ _blend_nodes_build(Elm_Transit *transit, Elm_Transit_Effect_Blend *blend)
data_list = eina_list_append(data_list, blend_node);
- evas_object_event_callback_add(blend_node->before,
- EVAS_CALLBACK_DEL, _blend_object_del_cb, blend);
- evas_object_event_callback_add(blend_node->after,
- EVAS_CALLBACK_DEL, _blend_object_del_cb, blend);
+ efl_event_callback_add(blend_node->before,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
+ efl_event_callback_add(blend_node->after,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
}
return data_list;
}
@@ -2400,10 +2405,10 @@ _transit_effect_blend_context_free(Elm_Transit_Effect *effect, Elm_Transit *tran
blend->nodes = eina_list_remove_list(blend->nodes, elist);
- evas_object_event_callback_del(blend_node->before,
- EVAS_CALLBACK_DEL, _blend_object_del_cb);
- evas_object_event_callback_del(blend_node->after,
- EVAS_CALLBACK_DEL, _blend_object_del_cb);
+ efl_event_callback_del(blend_node->before,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
+ efl_event_callback_del(blend_node->after,
+ EFL_EVENT_DEL, _blend_object_del_cb, blend);
free(blend_node);
}
free(blend);