elm elc_popup.c: Fixed the popup focus next infinite loop issue. Popup and notify had a circular focus dependency issue. Yes, popup needs a rewrite so this is a temporary fix. Special Thanks to Woohyun.

SVN revision: 79467
This commit is contained in:
Daniel Juyung Seo 2012-11-20 09:59:24 +00:00
parent 4c9edafed8
commit a10ee57b4e
1 changed files with 7 additions and 3 deletions

View File

@ -1193,7 +1193,9 @@ _elm_popup_smart_focus_next(const Evas_Object *obj,
{
ELM_POPUP_DATA_GET(obj, sd);
if (!elm_widget_focus_next_get(sd->notify, dir, next))
if (!elm_widget_focus_next_get(sd->content_area, dir, next) &&
!elm_widget_focus_next_get(sd->action_area, dir, next)
)
{
// XXX: ACCESS
if (_elm_config->access_mode == ELM_ACCESS_MODE_ON)
@ -1201,8 +1203,10 @@ _elm_popup_smart_focus_next(const Evas_Object *obj,
*next = sd->title_access_obj;
return EINA_TRUE;
}
elm_widget_focused_object_clear(sd->notify);
elm_widget_focus_next_get(sd->notify, dir, next);
elm_widget_focused_object_clear((Evas_Object *)obj);
if (!elm_widget_focus_next_get(sd->content_area, dir, next))
return elm_widget_focus_next_get(sd->action_area, dir, next);
return EINA_TRUE;
}
return EINA_TRUE;