summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmitesh Singh <amitesh.sh@samsung.com>2017-07-11 15:12:45 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2017-07-11 17:09:44 +0900
commitcc22a53095dacc2d65babb0f2e762b4ea3795e6e (patch)
tree2ddb2aa2082f359287c8afc8a6d68ae5be84e9bf
parentec4399349281ddbe9124adcab2ff2d3335aa3a20 (diff)
downloadefl-cc22a53095dacc2d65babb0f2e762b4ea3795e6e.tar.gz
genlist: fix multiple focus edje signal issue
We need focus edje signal when item is focused or the already focused item realizes. its wrong to call focus signal on _elm_genlist_item_state_update() fixes T4969
-rw-r--r--src/lib/elementary/elm_genlist.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/lib/elementary/elm_genlist.c b/src/lib/elementary/elm_genlist.c
index d184984ab7..73b5fc086f 100644
--- a/src/lib/elementary/elm_genlist.c
+++ b/src/lib/elementary/elm_genlist.c
@@ -1320,8 +1320,6 @@ _item_order_update(Elm_Gen_Item *it, int index, Eina_Bool process)
static void
_elm_genlist_item_state_update(Elm_Gen_Item *it)
{
- ELM_GENLIST_DATA_GET_FROM_ITEM(it, sd);
-
if (it->selected)
{
edje_object_signal_emit(VIEW(it), SIGNAL_SELECTED, "elm");
@@ -1343,9 +1341,6 @@ _elm_genlist_item_state_update(Elm_Gen_Item *it)
edje_object_signal_emit
(it->deco_all_view, SIGNAL_EXPANDED, "elm");
}
- if ((EO_OBJ(it) == sd->focused_item) &&
- (elm_widget_focus_highlight_enabled_get(WIDGET(it)) || _elm_config->win_auto_focus_enable))
- edje_object_signal_emit(VIEW(it), SIGNAL_FOCUSED, "elm");
}
static void
@@ -1785,7 +1780,8 @@ _elm_genlist_item_focus_update(Elm_Gen_Item *it)
Evas_Object *obj = WIDGET(it);
ELM_GENLIST_DATA_GET(obj, sd);
- if (elm_widget_focus_highlight_enabled_get(obj))
+ if (elm_widget_focus_highlight_enabled_get(obj)
+ || _elm_config->win_auto_focus_enable)
edje_object_signal_emit(VIEW(it), SIGNAL_FOCUSED, "elm");
focus_raise = edje_object_data_get(VIEW(it), "focusraise");