use focus order to determine if window never focused before instead of

show count. fixes focus problems in elm tests for entries



SVN revision: 68211
This commit is contained in:
Carsten Haitzler 2012-02-21 10:54:46 +00:00
parent acf31ec4cd
commit 628927d3d4
3 changed files with 9 additions and 2 deletions

View File

@ -2778,6 +2778,13 @@ elm_widget_focus_disabled_handle(Evas_Object *obj)
elm_widget_focus_tree_unfocusable_handle(obj);
}
EAPI unsigned int
elm_widget_focus_order_get(const Evas_Object *obj)
{
API_ENTRY return 0;
if (sd->focus_order) return sd->focus_order;
}
/**
* @internal
*
@ -3478,7 +3485,6 @@ _elm_widget_item_access_info_set(Elm_Widget_Item *item, const char *txt)
else item->access_info = eina_stringshare_add(txt);
}
static void
_smart_add(Evas_Object *obj)
{

View File

@ -428,6 +428,7 @@ EAPI void elm_widget_focus_hide_handle(Evas_Object *obj);
EAPI void elm_widget_focus_mouse_up_handle(Evas_Object *obj);
EAPI void elm_widget_focus_tree_unfocusable_handle(Evas_Object *obj);
EAPI void elm_widget_focus_disabled_handle(Evas_Object *obj);
EAPI unsigned int elm_widget_focus_order_get(const Evas_Object *obj);
EAPI void elm_widget_text_part_set(Evas_Object *obj, const char *part, const char *label);
EAPI const char *elm_widget_text_part_get(const Evas_Object *obj, const char *part);
EAPI void elm_widget_domain_translatable_text_part_set(Evas_Object *obj, const char *part, const char *domain, const char *text);

View File

@ -337,7 +337,7 @@ _elm_win_focus_in(Ecore_Evas *ee)
win = elm_widget_data_get(obj);
if (!win) return;
_elm_widget_top_win_focused_set(win->win_obj, EINA_TRUE);
if (win->show_count == 1)
if (!elm_widget_focus_order_get(obj))
{
elm_widget_focus_steal(win->win_obj);
win->show_count++;