Apply IActivatedListener for gengrid / genlist.
[profile/tv/apps/native/musicplayer.git] / src / views / album-layout.cpp
index 11e40f7..1540bc3 100644 (file)
@@ -213,7 +213,8 @@ void CAlbumLayout::m_OnCtxtClose(void)
 }
 
 
-void CAlbumLayout::sm_CbItemSelect(void *data, Elm_Object_Item *it, const char *emission, const char *source) {
+void CAlbumLayout::sm_CbItemSelect(void *data, Elm_Object_Item *it, const char *emission, const char *source)
+{
        CAlbumLayout *root = (CAlbumLayout*)data;
 
        if (root)
@@ -221,7 +222,8 @@ void CAlbumLayout::sm_CbItemSelect(void *data, Elm_Object_Item *it, const char *
 }
 
 
-void CAlbumLayout::m_OnItemSelect(Elm_Object_Item *it, const char *emission, const char *source) {
+void CAlbumLayout::m_OnItemSelect(Elm_Object_Item *it, const char *emission, const char *source)
+{
        SAlbumItemInfo *itinfo;
 
        itinfo = m_FindItemInfo(m->it_infolist, it);
@@ -315,7 +317,7 @@ void CAlbumLayout::m_CreateAlbumGrid(void)
                EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        elm_gengrid_align_set(grid, 0, 0);
        elm_object_part_content_set(Layout(), MUSIC_PART_ALBUM_GRID, grid);
-       Connect(grid, ALBUM_GENGRID, TYPE_MOUSE_MOVE | TYPE_KEY_DOWN | TYPE_REALIZED | TYPE_UNREALIZED);
+       Connect(grid, ALBUM_GENGRID, TYPE_MOUSE_MOVE | TYPE_KEY_DOWN | TYPE_REALIZED | TYPE_UNREALIZED | TYPE_ACTIVATED);
        elm_gengrid_item_size_set(grid,
                elm_config_scale_get() * GENGRID_ITEM_SIZE_W,
                elm_config_scale_get() * GENGRID_ITEM_SIZE_H);
@@ -657,8 +659,6 @@ void CAlbumLayout::OnKeyDown(int id, Evas *e, Evas_Object *obj, Evas_Event_Key_D
                break;
 
        default:
-               _ERR("Invalid Object");
-               ASSERT(0);
                break;
        }
 }
@@ -680,15 +680,46 @@ void CAlbumLayout::OnMouseMove(int id, Evas *e, Evas_Object *obj, Evas_Event_Mou
 
 void CAlbumLayout::OnRealized(int id, Evas_Object *obj, Elm_Object_Item *item)
 {
-       elm_object_item_signal_callback_add(item,
-               MUSIC_SIGNAL_BTN_CLICKED, MUSIC_BASE_VIEW,
-               sm_CbItemSelect, this);
+       switch (id) {
+       case ALBUM_GENGRID:
+               {
+                       elm_object_item_signal_callback_add(item,
+                       MUSIC_SIGNAL_BTN_CLICKED, MUSIC_BASE_VIEW,
+                       sm_CbItemSelect, this);
+               }
+               break;
+
+       default:
+               break;
+       }
 }
 
 
 void CAlbumLayout::OnUnrealized(int id, Evas_Object *obj, Elm_Object_Item *item)
 {
-       elm_object_item_signal_callback_del(item,
-               MUSIC_SIGNAL_BTN_CLICKED, MUSIC_BASE_VIEW,
-               sm_CbItemSelect);
+       switch (id) {
+       case ALBUM_GENGRID:
+               {
+                       elm_object_item_signal_callback_del(item,
+                       MUSIC_SIGNAL_BTN_CLICKED, MUSIC_BASE_VIEW,
+                       sm_CbItemSelect);
+               }
+               break;
+
+       default:
+               break;
+       }
 }
+
+
+void CAlbumLayout::OnActivated(int id, Evas_Object *obj, Elm_Object_Item *item)
+{
+       switch (id) {
+       case ALBUM_GENGRID:
+               m_OnItemSelect(item, NULL, NULL);
+               break;
+
+       default:
+               break;
+       }
+}
\ No newline at end of file