summaryrefslogtreecommitdiff
path: root/src/modules/datetime_input_ctxpopup
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2012-06-11 07:09:48 +0000
committerChunEon Park <hermet@hermet.pe.kr>2012-06-11 07:09:48 +0000
commit2fabcc673167b8df64b428be0c84e6582bcbb054 (patch)
tree997327c9a1691ed92bc80e4541e5e605005975b4 /src/modules/datetime_input_ctxpopup
parent642367c26963497b3d967a8fa336b382cc5eeb12 (diff)
elementary/datetime - [E-devel] [Patch][elementary] datetime module, delete callback
Dear all, hello. There is a case, in the _ctxpopup_parent_resize_cb() is called even though the datetime is removed. It makes a crash, so the callback should be deleted before removing datetime. That's it. Sincerely, Shinwoo Kim. Submitted-By-Off: Kim Shinwoo <kimcinoo.efl@gmail.com> SVN revision: 71929
Diffstat (limited to 'src/modules/datetime_input_ctxpopup')
-rw-r--r--src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
index c297eab9d..bdbcc83b3 100644
--- a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
+++ b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
@@ -218,6 +218,14 @@ _field_clicked_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__)
218 evas_object_show(ctx_mod->ctxpopup); 218 evas_object_show(ctx_mod->ctxpopup);
219} 219}
220 220
221static void
222_del_pre_hook(Evas_Object *obj)
223{
224 evas_object_event_callback_del(elm_widget_top_get(obj),
225 EVAS_CALLBACK_RESIZE,
226 _ctxpopup_parent_resize_cb);
227}
228
221// module fucns for the specific module type 229// module fucns for the specific module type
222EAPI void 230EAPI void
223field_value_display(Elm_Datetime_Module_Data *module_data, Evas_Object *obj) 231field_value_display(Elm_Datetime_Module_Data *module_data, Evas_Object *obj)
@@ -283,6 +291,8 @@ obj_hook(Evas_Object *obj)
283 evas_object_size_hint_align_set(ctx_mod->ctxpopup, EVAS_HINT_FILL, 0.5); 291 evas_object_size_hint_align_set(ctx_mod->ctxpopup, EVAS_HINT_FILL, 0.5);
284 evas_object_smart_callback_add(ctx_mod->ctxpopup, "dismissed", 292 evas_object_smart_callback_add(ctx_mod->ctxpopup, "dismissed",
285 _ctxpopup_dismissed_cb, ctx_mod); 293 _ctxpopup_dismissed_cb, ctx_mod);
294 elm_widget_del_pre_hook_set(obj, _del_pre_hook);
295
286 evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE, 296 evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE,
287 _datetime_resize_cb, ctx_mod); 297 _datetime_resize_cb, ctx_mod);
288 evas_object_event_callback_add(obj, EVAS_CALLBACK_MOVE, 298 evas_object_event_callback_add(obj, EVAS_CALLBACK_MOVE,