rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=8740b38ad37b49315ed2746d85319ce6704dd2ef
commit 8740b38ad37b49315ed2746d85319ce6704dd2ef Author: Andrii Kroitor <an.kroi...@samsung.com> Date: Fri Feb 5 15:51:14 2016 +0200 group_manager: fix state reset after save Fixes T3136 --- src/bin/project_manager/group_manager.c | 23 +++++++++++++++++++++++ src/bin/project_manager/group_manager.h | 3 +++ src/bin/ui/tabs.c | 2 +- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/bin/project_manager/group_manager.c b/src/bin/project_manager/group_manager.c index 93dd384..0877338 100644 --- a/src/bin/project_manager/group_manager.c +++ b/src/bin/project_manager/group_manager.c @@ -57,6 +57,29 @@ gm_group_edit_object_load(Project *pro, Group *group, Evas *e) } void +gm_group_edit_object_reload(Project *pro, Group *group) +{ + Part *part; + Eina_List *l; + + assert(pro != NULL); + assert(group != NULL); + assert(group->edit_object != NULL); + + if (!edje_object_mmap_set(group->edit_object, pro->mmap_file, group->name)) + { + ERR("Can't set mmap object"); + abort(); + } + + EINA_LIST_FOREACH(group->parts, l, part) + edje_edit_part_selected_state_set(group->edit_object, + part->name, + part->current_state->parsed_name, + part->current_state->parsed_val); +} + +void gm_group_edit_object_unload(Group *group) { assert(group != NULL); diff --git a/src/bin/project_manager/group_manager.h b/src/bin/project_manager/group_manager.h index 1fe712e..751b126 100644 --- a/src/bin/project_manager/group_manager.h +++ b/src/bin/project_manager/group_manager.h @@ -76,6 +76,9 @@ void gm_group_edit_object_load(Project *pro, Group *group, Evas *e); void +gm_group_edit_object_reload(Project *pro, Group *group); + +void gm_group_edit_object_unload(Group *group); State * diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c index 032f330..0fae5e7 100644 --- a/src/bin/ui/tabs.c +++ b/src/bin/ui/tabs.c @@ -368,7 +368,7 @@ _editor_saved(void *data __UNUSED__, pm_dev_file_reload(ap.project); EINA_LIST_FOREACH(tabs.items, l, item) { - edje_object_mmap_set(item->group->edit_object, ap.project->mmap_file, item->group->name); + gm_group_edit_object_reload(ap.project, item->group); if (item->content == tabs.current_workspace) workspace_groupview_hard_update(tabs.current_workspace); else --