From: Jehun Lim Date: Wed, 22 Jul 2015 12:04:18 +0000 (+0900) Subject: base: add BACK key handling X-Git-Tag: accepted/tizen/tv/20150728.070555~25 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3e17c8cbff5fa372783a0aa8ebb17546176d3912;p=profile%2Ftv%2Fapps%2Fnative%2Fair_mediahub.git base: add BACK key handling Change-Id: Ic5d46b660459d74257fa562777ee4b450cf74e6d Signed-off-by: Jehun Lim --- diff --git a/src/util/listmgr.c b/src/util/listmgr.c index 8b90508..f2635c6 100644 --- a/src/util/listmgr.c +++ b/src/util/listmgr.c @@ -79,6 +79,12 @@ static void _key_down_cb(int id, void *data, Evas *e, Evas_Object *obj, } break; + case LISTMGR_PLAY_INFO: + case LISTMGR_GRID: + if (!strcmp(ev->keyname, KEY_BACK) || + !strcmp(ev->keyname, KEY_BACK_REMOTE)) + elm_object_focus_next(obj, ELM_FOCUS_UP); + break; default: break; } @@ -231,6 +237,7 @@ static void _focused_cb(int id, void *data, Evas_Object *obj, } static input_handler _grid_handler = { + .key_down = _key_down_cb, .mouse_move = _mouse_move_cb, .focused = _focused_cb, .realized = _grid_realized_cb, @@ -295,6 +302,8 @@ static bool _draw_play_info(struct listmgr *lmgr) content = elm_object_part_content_get(ly, PART_ITEM_CONTENT); + elm_object_focus_next_object_set(content, index, ELM_FOCUS_UP); + inputmgr_add_callback(content, LISTMGR_PLAY_INFO, &_handler, lmgr); elm_object_signal_callback_add(content, SIG_ITEM_SELECTED, SIG_SOURCE_EDC, _play_info_selected_cb, lmgr); @@ -356,6 +365,8 @@ static Evas_Object *_draw_list_item(struct listmgr *lmgr, struct group_info *gi) evas_object_size_hint_min_set(grid, size * data->grid_item_x, data->grid_num_item * data->grid_item_y); + elm_object_focus_next_object_set(grid, btn, ELM_FOCUS_UP); + inputmgr_add_callback(grid, LISTMGR_GRID, &_grid_handler, lmgr); elm_object_part_content_set(ly, PART_ITEM_TITLE, btn); diff --git a/src/view/base.c b/src/view/base.c index 27efa42..928031a 100644 --- a/src/view/base.c +++ b/src/view/base.c @@ -14,6 +14,7 @@ * limitations under the License. */ +#include #include #include #include @@ -73,6 +74,9 @@ static void _key_down_cb(int id, void *data, Evas *e, Evas_Object *obj, if (!strcmp(ev->keyname, KEY_ENTER) || !strcmp(ev->keyname, KEY_ENTER_REMOTE)) elm_object_focus_next(obj, ELM_FOCUS_DOWN); + else if (!strcmp(ev->keyname, KEY_BACK) || + !strcmp(ev->keyname, KEY_BACK_REMOTE)) + ui_app_exit(); } static void _mouse_move_cb(int id, void *data, Evas *e,