aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYeongJong Lee <yj34.lee@samsung.com>2018-05-31 12:04:55 +0000
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2018-06-03 12:00:11 +0200
commit9758f99e0b6c9df316e1a5e3f539528554be759a (patch)
tree4ac9944d1f27948ba85d687ad49c94dd50bf97cd
parentee_wayland: remove needless variable (diff)
downloadefl-9758f99e0b6c9df316e1a5e3f539528554be759a.tar.gz
elm_table/grid: remove non-widgets from focus elements.
-rw-r--r--src/lib/elementary/elm_grid.c9
-rw-r--r--src/lib/elementary/elm_table.c9
2 files changed, 18 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_grid.c b/src/lib/elementary/elm_grid.c
index 3f36be46c1..f1d5cd04d5 100644
--- a/src/lib/elementary/elm_grid.c
+++ b/src/lib/elementary/elm_grid.c
@@ -17,9 +17,18 @@
static void
_elm_grid_efl_ui_focus_composition_prepare(Eo *obj, void *pd EINA_UNUSED)
{
+ Eina_List *l;
+ Efl_Ui_Widget *elem;
+
Elm_Widget_Smart_Data *wpd = efl_data_scope_get(obj, EFL_UI_WIDGET_CLASS);
Eina_List *order = evas_object_grid_children_get(wpd->resize_obj);
+ EINA_LIST_FOREACH(order, l, elem)
+ {
+ if (!efl_isa(elem, EFL_UI_WIDGET_CLASS))
+ order = eina_list_remove(order, elem);
+ }
+
efl_ui_focus_composition_elements_set(obj, order);
}
diff --git a/src/lib/elementary/elm_table.c b/src/lib/elementary/elm_table.c
index c5f8fe63b4..dfe7cf2bb7 100644
--- a/src/lib/elementary/elm_table.c
+++ b/src/lib/elementary/elm_table.c
@@ -18,9 +18,18 @@
static void
_elm_table_efl_ui_focus_composition_prepare(Eo *obj, void *pd EINA_UNUSED)
{
+ Eina_List *l;
+ Efl_Ui_Widget *elem;
+
Elm_Widget_Smart_Data *wpd = efl_data_scope_get(obj, EFL_UI_WIDGET_CLASS);
Eina_List *order = evas_object_table_children_get(wpd->resize_obj);
+ EINA_LIST_FOREACH(order, l, elem)
+ {
+ if (!efl_isa(elem, EFL_UI_WIDGET_CLASS))
+ order = eina_list_remove(order, elem);
+ }
+
efl_ui_focus_composition_elements_set(obj, order);
}