diff options
author | Marcel Hollerbach <marcel@osg.samsung.com> | 2017-10-25 14:29:31 +0200 |
---|---|---|
committer | Marcel Hollerbach <marcel@osg.samsung.com> | 2017-10-25 14:36:13 +0200 |
commit | 5a3ee984a1229c069c84e71a109a7d39437d5cc0 (patch) | |
tree | 7a713e249080065728008ea2f8cdd7490d0e4618 | |
parent | 53fcc4bb7de3bfc9c69f6e138bc25a1f52a49744 (diff) | |
download | efl-5a3ee984a1229c069c84e71a109a7d39437d5cc0.tar.gz |
elm_box: only allow focus to widgets of a box
all other should not get focus
-rw-r--r-- | src/lib/elementary/elm_box.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_box.c b/src/lib/elementary/elm_box.c index 07dee748ed..10ede30361 100644 --- a/src/lib/elementary/elm_box.c +++ b/src/lib/elementary/elm_box.c @@ -26,9 +26,18 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = { static void _elm_box_efl_ui_focus_composition_prepare(Eo *obj, Elm_Box_Data *pd EINA_UNUSED) { + Eina_List *n, *nn; + Elm_Widget *elem; + Elm_Widget_Smart_Data *wpd = efl_data_scope_get(obj, ELM_WIDGET_CLASS); Eina_List *order = evas_object_box_children_get(wpd->resize_obj); + EINA_LIST_FOREACH_SAFE(order, n, nn, elem) + { + if (!efl_isa(elem, ELM_WIDGET_CLASS)) + order = eina_list_remove(order, elem); + } + efl_ui_focus_composition_elements_set(obj, order); } |