Added the mediahub launching statements 35/44635/2
authorHyojung Jo <hj903.jo@samsung.com>
Fri, 24 Jul 2015 06:42:29 +0000 (15:42 +0900)
committerHyojung Jo <hj903.jo@samsung.com>
Fri, 24 Jul 2015 06:46:18 +0000 (15:46 +0900)
Change-Id: I100b85366debe9aa02cf97c37c903945835c7746
Signed-off-by: Hyojung Jo <hj903.jo@samsung.com>
include/define.h
src/data/media.c

index 1c8ab1f..5806bc8 100644 (file)
@@ -67,6 +67,9 @@
 #define STR_CNT_MUSIC "songs"
 #define STR_CNT_APPS "apps"
 #define STR_CNT_WEBS "bookmark"
+#define STR_MEDIAHUB_APP_ID "org.tizen.mediahub"
+#define STR_KEY_MEDIA_ID "media_id"
+#define STR_KEY_SENDER_ID "sender_id"
 
 /* Font */
 #define FONT_TIZENSANS_REGULAR "TizenSans"
index 8cc2dce..6fdbd64 100644 (file)
@@ -19,6 +19,8 @@
 #include <app_contents.h>
 #include <app_media.h>
 #include <app_debug.h>
+#include <bundle.h>
+#include <aul.h>
 
 #include "define.h"
 #include "datamgr.h"
@@ -218,7 +220,48 @@ static void _free_favorites(Eina_List *list)
 
 static bool _action(Elm_Object_Item *it)
 {
-       /* It should be implemented later. */
+       bundle *b = NULL;
+       app_media *am;
+       app_media_info *minfo;
+       char *id;
+       int r;
+
+       if (!it) {
+               _ERR("Invalid argument.");
+               return false;
+       }
+
+       am = elm_object_item_data_get(it);
+       if (!am)
+               return false;
+
+       minfo = app_media_get_info(am);
+       if (!minfo) {
+               _ERR("Get app_media_info failed.");
+               return false;
+       }
+
+       id = minfo->media_id;
+       if (!id)
+               return false;
+
+       b = bundle_create();
+       if (!b) {
+               _ERR("Bundle create failed.");
+               return false;
+       }
+
+       bundle_add_str(b, STR_KEY_MEDIA_ID, id);
+       bundle_add_str(b, STR_KEY_SENDER_ID, STR_FAVORITE);
+
+       r = aul_launch_app(STR_MEDIAHUB_APP_ID, b);
+       if (r < 0) {
+               _ERR("Mediahub launch failed.");
+               bundle_free(b);
+               return false;
+       }
+
+       bundle_free(b);
 
        return true;
 }