Fixed navigating by D-pad in More Menu 76/48576/2 accepted/tizen/tv/20150923.231332 submit/tizen_tv/20150923.083054
authorAlbert Malewski <a.malewski@samsung.com>
Wed, 23 Sep 2015 06:13:29 +0000 (08:13 +0200)
committerAlbert Malewski <a.malewski@samsung.com>
Wed, 23 Sep 2015 06:29:37 +0000 (23:29 -0700)
[Issue]    https://bugs.tizen.org/jira/browse/TT-183
[Problem]  There was no support for D-pad navigation in More Menu.
[Cause]    Incorrect method of callback registration was used.
[Solution] Registered callback in elm_gengrid_item_append function
           instead of evas_object_smart_callback_add.
[Verify]   Launch browser > Navigate to More menu > Choose an item
           You should be able to go into Bookmarks/History/Settings
           from More Menu just using keyboard/D-pad.

Change-Id: Ib4673f0e645dbc1c3cbf4d4e2503cf4609b5a205

services/MoreMenuUI/MoreMenuUI.cpp

index d8050ec97bfdbc95c751392f5d2858489dc8afd8..395a43d2b91c1a954a16e8c994b65b2d63fb611c 100644 (file)
@@ -324,7 +324,7 @@ void MoreMenuUI::addItems()
          MoreMenuItemData *itemData = new MoreMenuItemData();
          itemData->item = type;
          itemData->moreMenuUI = std::shared_ptr<tizen_browser::base_ui::MoreMenuUI>(this);
-         Elm_Object_Item* bookmarkView = elm_gengrid_item_append(m_gengrid, m_item_class, itemData, NULL, this);
+         Elm_Object_Item* bookmarkView = elm_gengrid_item_append(m_gengrid, m_item_class, itemData, _thumbSelected, itemData);
          m_map_menu_views.insert(std::pair<ItemType, Elm_Object_Item*>(itemData->item, bookmarkView));
          elm_gengrid_item_selected_set(bookmarkView, EINA_FALSE);
      }
@@ -455,7 +455,6 @@ Evas_Object * MoreMenuUI::_grid_content_get(void *data, Evas_Object *obj, const
         if (!strncmp(part_name2, part, part_name2_len)) {
             Evas_Object *thumbButton = elm_button_add(obj);
             elm_object_style_set(thumbButton, "clickButton");
-            evas_object_smart_callback_add(thumbButton, "clicked", tizen_browser::base_ui::MoreMenuUI::_thumbSelected, data);
             evas_object_event_callback_add(thumbButton, EVAS_CALLBACK_MOUSE_IN, __cb_mouse_in, data);
             evas_object_event_callback_add(thumbButton, EVAS_CALLBACK_MOUSE_OUT, __cb_mouse_out, data);
             return thumbButton;