diff options
author | Jaehyun Cho <jae_hyun.cho@samsung.com> | 2014-04-24 14:22:26 +0900 |
---|---|---|
committer | ChunEon Park <hermet@hermet.pe.kr> | 2014-04-24 14:22:26 +0900 |
commit | b04e5de512cd3c3f3136164dd71f19163a8fc656 (patch) | |
tree | abe3a17d690f0ec0c2673b417049827e28962f84 | |
parent | a6502488ea414492e8669f7fae4ed7d4eb0dad32 (diff) | |
download | elementary-b04e5de512cd3c3f3136164dd71f19163a8fc656.tar.gz |
naviframe: Emit visible/invisible signals when view is shown/hidden
Summary:
Previously, previous view was just shown by evas_object_show and hidden by evas_object_hide.
Now, "elm,state,visible" and "elm,state,invisible" signals are emitted to enable application to do in edc what they want when each view is shown/hidden.
Reviewers: Hermet
CC: raster
Differential Revision: https://phab.enlightenment.org/D785
-rw-r--r-- | src/lib/elc_naviframe.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/elc_naviframe.c b/src/lib/elc_naviframe.c index 72aadf647..9ce18c9b2 100644 --- a/src/lib/elc_naviframe.c +++ b/src/lib/elc_naviframe.c @@ -1049,6 +1049,8 @@ _on_item_push_finished(void *data, evas_object_hide(VIEW(it)); + elm_object_signal_emit(VIEW(it), "elm,state,invisible", "elm"); + if (sd->freeze_events) evas_object_freeze_events_set(VIEW(it), EINA_FALSE); } @@ -1532,6 +1534,7 @@ _elm_naviframe_item_insert_before(Eo *obj, Elm_Naviframe_Data *sd, Elm_Object_It EINA_INLIST_GET(((Elm_Naviframe_Item *)before))); elm_widget_tree_unfocusable_set(VIEW(it), EINA_TRUE); + elm_object_signal_emit(VIEW(it), "elm,state,invisible", "elm"); elm_layout_sizing_eval(obj); @@ -1567,6 +1570,8 @@ _elm_naviframe_item_insert_after(Eo *obj, Elm_Naviframe_Data *sd, Elm_Object_Ite elm_object_focus_set(VIEW(it), EINA_TRUE); else elm_object_focus_set(WIDGET(it), EINA_TRUE); + elm_object_signal_emit(VIEW(it), "elm,state,visible", "elm"); + elm_object_signal_emit(VIEW(after), "elm,state,invisible", "elm"); } else elm_object_signal_emit(VIEW(it), "elm,state,invisible", "elm"); |