Elm_Genlist_Data *sd = GL_IT(it)->wsd;
Evas_Object *win = elm_widget_top_get(sd->obj);
- sd->on_focus_defer = EINA_FALSE;
-
evas_object_geometry_get(VIEW(it), &x, &y, &w, &h);
evas_object_geometry_get(sd->obj, &sx, &sy, &sw, &sh);
if ((x < sx) || (y < sy) || ((x + w) > (sx + sw)) || ((y + h) > (sy + sh)))
{
//TIZEN_ONLY(20191217): Item selection support for non aligned items
- if (it != sd->selecting_item)
+ if ((it != sd->selecting_item) && !sd->on_focus_defer)
//
elm_genlist_item_bring_in(EO_OBJ(it), type);
}
(VIEW(it), SIGNAL_FOCUSED, "elm");
}
+ sd->on_focus_defer = EINA_FALSE;
sd->focused_item = EO_OBJ(it);
efl_event_callback_legacy_call(WIDGET(it), ELM_GENLIST_EVENT_ITEM_FOCUSED, EO_OBJ(it));
if (_elm_atspi_enabled())
sd->bring_in = EINA_FALSE;
sd->scroll_to_type = type;
+ if (sd->on_focus_defer) elm_object_item_focus_set(EO_OBJ(it), EINA_TRUE);
_changed(sd->pan_obj);
}
sd->show_item = it;
sd->scroll_to_type = type;
+ if (sd->on_focus_defer) elm_object_item_focus_set(EO_OBJ(it), EINA_TRUE);
_changed(sd->pan_obj);
}