jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5a9c6d393aeda99d2691953dc978ec8b5f905fa7
commit 5a9c6d393aeda99d2691953dc978ec8b5f905fa7 Author: Sungtaek Hong <sth253.h...@samsung.com> Date: Mon Jan 2 15:41:20 2017 +0900 elm_naviframe: resize previous view before item pop transition. Summary: - In commit rEFL9f5e9ec7ca120242a92ac97fb20016263c152d8e previous view is raised after item pop transition so that current view's pop animation can be shown. - But, previous view has to be in it's proper size during transition because some of animation might show previous view. Reviewers: Jaehyun_Cho Subscribers: cedric, conr2d, jpeg Differential Revision: https://phab.enlightenment.org/D4535 --- src/lib/elementary/elc_naviframe.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/lib/elementary/elc_naviframe.c b/src/lib/elementary/elc_naviframe.c index c8bce97..0cf45b5 100644 --- a/src/lib/elementary/elc_naviframe.c +++ b/src/lib/elementary/elc_naviframe.c @@ -1132,15 +1132,16 @@ _on_item_pop_finished(void *data, const char *source EINA_UNUSED) { Elm_Naviframe_Item_Data *it = data; - Elm_Naviframe_Item_Data *prev_it = NULL; + Elm_Object_Item *eo_prev_it = NULL; ELM_NAVIFRAME_DATA_GET(WIDGET(it), sd); - if (sd->stack && sd->stack->last) + eo_prev_it = elm_naviframe_top_item_get(WIDGET(it)); + if (eo_prev_it) { - prev_it = EINA_INLIST_CONTAINER_GET - (sd->stack->last, Elm_Naviframe_Item_Data); - _resize_object_reset(WIDGET(it), prev_it); + ELM_NAVIFRAME_ITEM_DATA_GET(eo_prev_it, prev_it); + + evas_object_raise(VIEW(prev_it)); } if (sd->preserve) @@ -1813,6 +1814,8 @@ _elm_naviframe_item_pop(Eo *obj, Elm_Naviframe_Data *sd) evas_object_freeze_events_set(VIEW(prev_it), EINA_TRUE); } + elm_widget_resize_object_set(obj, VIEW(prev_it), EINA_FALSE); + /* these 2 signals MUST take place simultaneously */ elm_object_signal_emit(VIEW(it), "elm,state,cur,popped", "elm"); elm_object_signal_emit(VIEW(prev_it), "elm,state,prev,popped", "elm"); --