diff options
author | Jaehwan Kim <jae.hwan.kim@samsung.com> | 2015-09-15 19:41:51 +0900 |
---|---|---|
committer | Jaehwan Kim <jae.hwan.kim@samsung.com> | 2015-09-15 19:53:23 +0900 |
commit | 431492ec497eeaa130f5c2da27ce7a4c7eefe7f9 (patch) | |
tree | 1235a45c72f1d295de173db3fb2ff3545dfcb9d4 /src/lib/elm_win.c | |
parent | f3844dcef81ac4c6a74513469d21040169002253 (diff) | |
download | elementary-431492ec497eeaa130f5c2da27ce7a4c7eefe7f9.tar.gz |
focus: add the APIs to set the focus next about item.
Add elm_object_focus_next_item_set/get,
elm_object_item_focus_next_object_set/get and
elm_object_item_focus_next_item_set/get.
If the item and object is set at the same time,
the item is preference to object when the focus moves.
This feature is implemented about gengrid.
It will be implemented about ohter widgets.
@feature
Diffstat (limited to 'src/lib/elm_win.c')
-rw-r--r-- | src/lib/elm_win.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c index 0ced87af5..9d4fecc47 100644 --- a/src/lib/elm_win.c +++ b/src/lib/elm_win.c @@ -1081,7 +1081,7 @@ _elm_win_focus_in(Ecore_Evas *ee) if (!elm_widget_focus_order_get(obj) || (obj == elm_widget_newest_focus_order_get(obj, &order, EINA_TRUE))) { - elm_widget_focus_steal(obj); + elm_widget_focus_steal(obj, NULL); } else { @@ -1439,7 +1439,7 @@ _elm_win_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, Elm_Win_Data *_pd } EOLIAN static Eina_Bool -_elm_win_elm_widget_focus_next(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, Elm_Focus_Direction dir, Evas_Object **next) +_elm_win_elm_widget_focus_next(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, Elm_Focus_Direction dir, Evas_Object **next, Elm_Object_Item **next_item) { ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE); @@ -1457,7 +1457,7 @@ _elm_win_elm_widget_focus_next(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, Elm_Focus } list_data_get = eina_list_data_get; - elm_widget_focus_list_next_get(obj, items, list_data_get, dir, next); + elm_widget_focus_list_next_get(obj, items, list_data_get, dir, next, next_item); if (*next) return EINA_TRUE; } @@ -1495,10 +1495,10 @@ _elm_win_elm_widget_focus_direction(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, cons } EOLIAN static Eina_Bool -_elm_win_elm_widget_on_focus(Eo *obj, Elm_Win_Data *sd) +_elm_win_elm_widget_on_focus(Eo *obj, Elm_Win_Data *sd, Elm_Object_Item *item EINA_UNUSED) { Eina_Bool int_ret = EINA_FALSE; - eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_on_focus()); + eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_on_focus(NULL)); if (!int_ret) return EINA_TRUE; if (sd->img_obj) @@ -1819,7 +1819,7 @@ _win_img_focus_in(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { - elm_widget_focus_steal(data); + elm_widget_focus_steal(data, NULL); } static void |