This reverts commit
377179bdaf84aa1a86621cdfa64ed43613ab9d45.
The main claim of https://phab.enlightenment.org/T1205 was fixed in
the previous commit
30cada369. This code will be modifed again in the
next commit due to the api change during development life cycle.
Note: do not blindly revert this commit if you have any problem with
widget item focus. This commit is not related to any fundamental cause
of the issues. If you have a problem, please contact me first.
seojuyung2@gmail.com or SeoZ on IRC.
Thanks.
(elm_widget_item_disabled_get(it)))
return;
+ if (!_elm_config->focus_auto_scroll_bring_in_enable)
+ elm_gengrid_item_show
+ ((Elm_Object_Item *)it, ELM_GENGRID_ITEM_SCROLLTO_IN);
+ else
+ elm_gengrid_item_bring_in
+ ((Elm_Object_Item *)it, ELM_GENGRID_ITEM_SCROLLTO_IN);
sd->focused_item = (Elm_Object_Item *)it;
if (elm_widget_focus_highlight_enabled_get(obj))
(elm_widget_item_disabled_get(it)))
return;
+ if (!_elm_config->focus_auto_scroll_bring_in_enable)
+ elm_genlist_item_show((Elm_Object_Item *)it,
+ ELM_GENLIST_ITEM_SCROLLTO_IN);
+ else
+ elm_genlist_item_bring_in((Elm_Object_Item *)it,
+ ELM_GENLIST_ITEM_SCROLLTO_IN);
sd->focused_item = (Elm_Object_Item *)it;
if (elm_widget_focus_highlight_enabled_get(obj))
_elm_list_item_focused(Elm_List_Item *it)
{
ELM_LIST_DATA_GET(WIDGET(it), sd);
+ Evas_Coord x, y, w, h, sx, sy, sw, sh;
const char *focus_raise;
if ((!sd) || (sd->select_mode == ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY) ||
(it == (Elm_List_Item *)sd->focused_item))
return;
+ evas_object_geometry_get(VIEW(it), &x, &y, &w, &h);
+ evas_object_geometry_get(sd->hit_rect, &sx, &sy, &sw, &sh);
+ if ((x < sx) || (y < sy)|| ((x + w) > (sx + sw)) || ((y + h) > (sy + sh)))
+ {
+ if (!_elm_config->focus_auto_scroll_bring_in_enable)
+ elm_list_item_show((Elm_Object_Item *)it);
+ else
+ elm_list_item_bring_in((Elm_Object_Item *)it);
+ }
sd->focused_item = (Elm_Object_Item *)it;
if (elm_widget_focus_highlight_enabled_get(WIDGET(it)))
{
return;
sd->focused_item = it;
+ if (!_elm_config->focus_auto_scroll_bring_in_enable)
+ elm_toolbar_item_show((Elm_Object_Item *)it,
+ ELM_TOOLBAR_ITEM_SCROLLTO_IN);
+ else
+ elm_toolbar_item_bring_in((Elm_Object_Item *)it,
+ ELM_TOOLBAR_ITEM_SCROLLTO_IN);
if (elm_widget_focus_highlight_enabled_get(obj))
{
edje_object_signal_emit