aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Hollerbach <marcel@osg.samsung.com>2018-04-30 11:17:36 +0200
committerMarcel Hollerbach <marcel@osg.samsung.com>2018-04-30 15:22:52 +0200
commit8b2a6a0b4db8cac06ff7be78033b06a1ca0df225 (patch)
tree5d199d7dedc1c72bcfeffaadabf406c30054121f
parentefl_ui_focus_manager_calc: drop redirect if there is no candidate (diff)
downloadefl-8b2a6a0b4db8cac06ff7be78033b06a1ca0df225.tar.gz
elm_widget_item_static_focus: a other element could also hide behind the
adapter
-rw-r--r--src/lib/elementary/elm_widget_item_static_focus.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_widget_item_static_focus.c b/src/lib/elementary/elm_widget_item_static_focus.c
index d4d2c26a93..fffb397fa8 100644
--- a/src/lib/elementary/elm_widget_item_static_focus.c
+++ b/src/lib/elementary/elm_widget_item_static_focus.c
@@ -62,6 +62,18 @@ _elm_widget_item_static_focus_efl_ui_focus_object_prepare_logical_none_recursive
logical_child = efl_ui_focus_manager_request_subchild(wpd->widget, obj);
+ if (logical_child == pd->adapter)
+ {
+ Eo *next_widget;
+ next_widget = efl_ui_focus_manager_request_move(wpd->widget, EFL_UI_FOCUS_DIRECTION_NEXT, logical_child, EINA_TRUE);
+
+ if (efl_isa(next_widget, ELM_WIDGET_ITEM_STATIC_FOCUS_CLASS))
+ {
+ next_widget = NULL;
+ }
+ logical_child = next_widget;
+ }
+
if (!logical_child)
{
if (!pd->adapter)