}
if (ed->L) _edje_lua2_script_shutdown(ed);
- while (ed->subobjs) evas_object_del(ed->subobjs->data);
+ while (ed->subobjs) _edje_subobj_unregister(ed, ed->subobjs->data);
if (ed->table_parts) free(ed->table_parts);
ed->table_parts = NULL;
ed->table_parts_size = 0;
void _edje_lib_unref(void);
void _edje_subobj_register(Edje *ed, Evas_Object *ob);
+void _edje_subobj_unregister(Edje *ed, Evas_Object *ob);
void _edje_multisense_init(void);
void _edje_multisense_shutdown(void);
_cb_subobj_del(void *data, __UNUSED__ Evas *e, Evas_Object *obj, __UNUSED__ void *event_info)
{
Edje *ed = data;
- ed->subobjs = eina_list_remove(ed->subobjs, obj);
- evas_object_event_callback_del_full(obj, EVAS_CALLBACK_DEL,
- _cb_subobj_del, ed);
+ _edje_subobj_unregister(ed, obj);
}
void
_cb_subobj_del, ed);
}
+void
+_edje_subobj_unregister(Edje *ed, Evas_Object *obj)
+{
+ ed->subobjs = eina_list_remove(ed->subobjs, obj);
+ evas_object_event_callback_del_full(obj, EVAS_CALLBACK_DEL,
+ _cb_subobj_del, ed);
+}
+
/* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/