}
int
-_edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Eina_List *group_path)
+_edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, const char *parent, Eina_List *group_path)
{
Edje *ed;
unsigned int n;
if (ed->group) eina_stringshare_del(ed->group);
ed->path = eina_stringshare_add(file);
ed->group = eina_stringshare_add(group);
+ ed->parent = eina_stringshare_add(parent);
ed->load_error = EDJE_LOAD_ERROR_NONE;
_edje_file_add(ed);
{
Eina_List *l;
Evas_Object *child_obj;
- Edje *child_ed;
const char *group_path_entry = eina_stringshare_add(source);
const char *data;
_edje_real_part_swallow(rp, child_obj);
}
- if (!_edje_object_file_set_internal(child_obj, file, source, group_path))
+ if (!_edje_object_file_set_internal(child_obj, file, source, rp->part->name, group_path))
{
_edje_thaw(ed);
_edje_unblock(ed);
evas_event_thaw_eval(tev);
return 0;
}
- child_ed = _edje_fetch(child_obj);
- child_ed->parent = eina_stringshare_add(rp->part->name);
group_path = eina_list_remove(group_path, group_path_entry);
eina_stringshare_del(group_path_entry);
void _edje_edd_init(void);
void _edje_edd_shutdown(void);
-int _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, Eina_List *group_path);
+int _edje_object_file_set_internal(Evas_Object *obj, const char *file, const char *group, const char *parent, Eina_List *group_path);
void _edje_file_add(Edje *ed);
void _edje_file_del(Edje *ed);
static Eina_Bool
_edje_smart_file_set(Evas_Object *obj, const char *file, const char *group)
{
- return _edje_object_file_set_internal(obj, file, group, NULL);
+ return _edje_object_file_set_internal(obj, file, group, NULL, NULL);
}