hermet pushed a commit to branch master.

commit f8df137bee5aba9602689b902c7fae4577d8008b
Author: ChunEon Park <[email protected]>
Date:   Mon May 20 20:42:38 2013 +0900

    elemenatry/naviframe - don't pop the view if the freeze_event is enabled 
and some views are alreadying popping.
---
 src/lib/elc_naviframe.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/lib/elc_naviframe.c b/src/lib/elc_naviframe.c
index 349b5fb..490f608 100644
--- a/src/lib/elc_naviframe.c
+++ b/src/lib/elc_naviframe.c
@@ -1341,8 +1341,9 @@ _elm_naviframe_smart_del(Eo *obj, void *_pd, va_list 
*list EINA_UNUSED)
 }
 
 static void
-_elm_naviframe_smart_event(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+_elm_naviframe_smart_event(Eo *obj, void *_pd, va_list *list)
 {
+   Elm_Naviframe_Smart_Data *sd = _pd;
    Evas_Object *source = va_arg(*list, Evas_Object *);
    Evas_Callback_Type type = va_arg(*list, Evas_Callback_Type);
    Evas_Event_Key_Down *ev = va_arg(*list, Evas_Event_Key_Down *);
@@ -1359,13 +1360,15 @@ _elm_naviframe_smart_event(Eo *obj, void *_pd 
EINA_UNUSED, va_list *list)
    eo_do(obj, elm_obj_naviframe_top_item_get((Elm_Object_Item **)&it));
    if (!it) return;
 
+   ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+   if (ret) *ret = EINA_TRUE;
+
+   if (sd->freeze_events && sd->popping) return;
+
    //FIXME: Replace this below code to elm_naviframe_item_pop() at elm 2.0.
    ///Leave for compatibility. 
    if (it->title_prev_btn)
      evas_object_smart_callback_call(it->title_prev_btn, SIG_CLICKED, NULL);
-
-   ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
-   if (ret) *ret = EINA_TRUE;
 }
 
 static void

-- 

------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d

Reply via email to