Revert commit:3654d6e28137cfaf72444d5c5e26b651fabac89e. When stealing focus from another widget, Checking visibility of parent widget is wrong :(

This commit is contained in:
WooHyun Jung 2013-05-08 21:08:44 +09:00
parent fdcd40f6fb
commit a603b93252
3 changed files with 5 additions and 15 deletions

View File

@ -1340,7 +1340,3 @@
2013-05-06 WooHyun Jung 2013-05-06 WooHyun Jung
* Add elm_entry smart callback - "text,set,done". * Add elm_entry smart callback - "text,set,done".
2013-05-07 WooHyun Jung
* Focus cannot be stolen when one of parents is invisible or disabled.

View File

@ -227,7 +227,6 @@ Fixes:
* Fix gengrid does not work under the accessibility. * Fix gengrid does not work under the accessibility.
* Fix do not append NULL to genlist focus list. * Fix do not append NULL to genlist focus list.
* Fix elm_clock_first_interval_set writes wrong value. * Fix elm_clock_first_interval_set writes wrong value.
* Focus cannot be stolen when one of parents is invisible or disabled.
Removals: Removals:

View File

@ -3195,20 +3195,15 @@ _elm_widget_focus_steal(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
if (sd->disabled) return; if (sd->disabled) return;
if (!sd->can_focus) return; if (!sd->can_focus) return;
if (sd->tree_unfocusable) return; if (sd->tree_unfocusable) return;
parent2 = parent = obj; parent = obj;
for (;; ) for (;; )
{ {
o = elm_widget_parent_get(parent2); o = elm_widget_parent_get(parent);
if (!o) if (!o) break;
{
parent = parent2;
break;
}
if (!evas_object_visible_get(o)) return;
sd = eo_data_scope_get(o, MY_CLASS); sd = eo_data_scope_get(o, MY_CLASS);
if (sd->disabled || sd->tree_unfocusable) return; if (sd->disabled || sd->tree_unfocusable) return;
if (sd->focused) parent = o; if (sd->focused) break;
parent2 = o; parent = o;
} }
if ((!elm_widget_parent_get(parent)) && if ((!elm_widget_parent_get(parent)) &&
(!elm_widget_parent2_get(parent))) (!elm_widget_parent2_get(parent)))