Removed aul and applied app_control for launching app 47/45347/1 accepted/tizen/tv/20150806.065641 submit/tizen/20150806.011755
authorHyojung Jo <hj903.jo@samsung.com>
Wed, 5 Aug 2015 05:28:34 +0000 (14:28 +0900)
committerHyojung Jo <hj903.jo@samsung.com>
Wed, 5 Aug 2015 05:28:34 +0000 (14:28 +0900)
Change-Id: I68e059f2dddb9d0269192ca936a54b6326b4609a
Signed-off-by: Hyojung Jo <hj903.jo@samsung.com>
CMakeLists.txt
include/utils.h
packaging/org.tizen.apps.spec
src/main.c
src/utils.c
src/view/view_action_menu.c
src/view/view_base.c

index faff52b..f6e9673 100644 (file)
@@ -23,7 +23,6 @@ pkg_check_modules(PKGS REQUIRED
                capi-appfw-application
                app-utils
                pkgmgr-info
-               aul
                )
 
 IF(NOT DEFINED PACKAGE_NAME)
index c39e4b4..504a712 100644 (file)
 #ifndef __AIR_APPS_UTILS_H__
 #define __AIR_APPS_UTILS_H__
 
-Evas_Object *add_window(const char *name);
-Evas_Object *add_layout(Evas_Object *parent, const char *group);
-Evas_Object *add_box(Evas_Object *parent, const char *part,
+Evas_Object *utils_add_window(const char *name);
+Evas_Object *utils_add_layout(Evas_Object *parent, const char *group);
+Evas_Object *utils_add_box(Evas_Object *parent, const char *part,
                Eina_Bool horizontal, Evas_Coord padding_h,
                Evas_Coord padding_v);
-Evas_Object *add_button(Evas_Object *parent, const char *part, const char *text,
-               const char *style);
+Evas_Object *utils_add_button(Evas_Object *parent, const char *part,
+               const char *text, const char *style);
+bool utils_launch_app(const char *appid);
 
 #endif /* __AIR_APPS_UTILS_H__ */
index 6b4656c..5942fd5 100644 (file)
@@ -12,7 +12,6 @@ BuildRequires: pkgconfig(elementary)
 BuildRequires: pkgconfig(capi-appfw-application)
 BuildRequires: pkgconfig(app-utils)
 BuildRequires: pkgconfig(pkgmgr-info)
-BuildRequires: pkgconfig(aul)
 
 %define _appdir /usr/apps/%{name}
 %define _bindir %{_appdir}/bin
index 52e3631..89a4668 100644 (file)
@@ -44,7 +44,7 @@ static bool _create(void *data)
 
        elm_theme_overlay_add(NULL, THEMEFILE);
 
-       win = add_window(ad->name);
+       win = utils_add_window(ad->name);
        if (!win) {
                _ERR("Add window failed.");
                return false;
index 257e210..f6db627 100644 (file)
  */
 
 #include <Elementary.h>
+#include <app_control.h>
 #include <app_debug.h>
 
 #include "utils.h"
 
-Evas_Object *add_window(const char *name)
+Evas_Object *utils_add_window(const char *name)
 {
        Evas_Object *win;
 
@@ -42,7 +43,7 @@ Evas_Object *add_window(const char *name)
        return win;
 }
 
-Evas_Object *add_layout(Evas_Object *parent, const char *group)
+Evas_Object *utils_add_layout(Evas_Object *parent, const char *group)
 {
        Evas_Object *layout;
 
@@ -66,7 +67,7 @@ Evas_Object *add_layout(Evas_Object *parent, const char *group)
        return layout;
 }
 
-Evas_Object *add_box(Evas_Object *parent, const char *part,
+Evas_Object *utils_add_box(Evas_Object *parent, const char *part,
                Eina_Bool horizontal, Evas_Coord padding_h,
                Evas_Coord padding_v)
 {
@@ -98,7 +99,7 @@ Evas_Object *add_box(Evas_Object *parent, const char *part,
        return box;
 }
 
-Evas_Object *add_button(Evas_Object *parent, const char *part,
+Evas_Object *utils_add_button(Evas_Object *parent, const char *part,
                const char *text, const char *style)
 {
        Evas_Object *btn;
@@ -125,3 +126,45 @@ Evas_Object *add_button(Evas_Object *parent, const char *part,
 
        return btn;
 }
+
+bool utils_launch_app(const char *appid)
+{
+       app_control_h app_ctrl;
+       int r;
+
+       if (!appid) {
+               _ERR("Invalid argument.");
+               return false;
+       }
+
+       r = app_control_create(&app_ctrl);
+       if (r != APP_CONTROL_ERROR_NONE) {
+               _ERR("App control handle create failed.");
+               return false;
+       }
+
+       r = app_control_set_operation(app_ctrl, APP_CONTROL_OPERATION_DEFAULT);
+       if (r != APP_CONTROL_ERROR_NONE) {
+               _ERR("App control set operation failed.");
+               app_control_destroy(app_ctrl);
+               return false;
+       }
+
+       r = app_control_set_app_id(app_ctrl, appid);
+       if (r != APP_CONTROL_ERROR_NONE) {
+               _ERR("App control set app id failed.");
+               app_control_destroy(app_ctrl);
+               return false;
+       }
+
+       r = app_control_send_launch_request(app_ctrl, NULL, NULL);
+       if (r != APP_CONTROL_ERROR_NONE) {
+               _ERR("App control send launch request failed.");
+               app_control_destroy(app_ctrl);
+               return false;
+       }
+
+       app_control_destroy(app_ctrl);
+
+       return true;
+}
index 27dd1d2..4400cf3 100644 (file)
@@ -42,7 +42,7 @@ static Evas_Object *_create(Evas_Object *win, void *data)
                return NULL;
        }
 
-       base = add_layout(win, GRP_VIEW_ACTION_MENU);
+       base = utils_add_layout(win, GRP_VIEW_ACTION_MENU);
        if (!base) {
                _ERR("Add layout failed.");
                free(priv);
index e02c59e..2ce9e56 100644 (file)
@@ -16,7 +16,6 @@
 
 #include <app.h>
 #include <Elementary.h>
-#include <aul.h>
 #include <viewmgr.h>
 #include <gridmgr.h>
 #include <inputmgr.h>
@@ -362,7 +361,7 @@ static bool _draw_sort_option(struct _priv *priv)
                return false;
        }
 
-       box = add_box(ctxpopup, NULL, EINA_FALSE,
+       box = utils_add_box(ctxpopup, NULL, EINA_FALSE,
                        SIZE_SORT_BOX_PAD_H, SIZE_SORT_BOX_PAD_V);
        if (!box) {
                _ERR("elm_box_add failed.");
@@ -382,7 +381,8 @@ static bool _draw_sort_option(struct _priv *priv)
        priv->sort_popup = ctxpopup;
 
        for (i = 0; i < SORT_COUNT; i++) {
-               btn = add_button(box, NULL, str_sort[i], STYLE_OPTION_BTN);
+               btn = utils_add_button(box, NULL, str_sort[i],
+                               STYLE_OPTION_BTN);
                if (!btn) {
                        _ERR("Add button failed.");
                        evas_object_del(ctxpopup);
@@ -521,7 +521,6 @@ static void _grid_item_selected_cb(void *data, Elm_Object_Item *it,
        struct _priv *priv;
        struct app_data *adata, *new_adata;
        Elm_Object_Item *item;
-       int r;
 
        if (!data || !it) {
                _ERR("Invalid argument.");
@@ -530,9 +529,8 @@ static void _grid_item_selected_cb(void *data, Elm_Object_Item *it,
        priv = data;
        adata = elm_object_item_data_get(it);
 
-       r = aul_open_app(get_app_id(adata));
-       if (r == AUL_R_EINVAL) {
-               _ERR("Wrong app id");
+       if (!utils_launch_app(get_app_id(adata))) {
+               _ERR("Launch app failed.");
                return;
        }
 
@@ -643,7 +641,7 @@ static bool _draw_top_area(struct _priv *priv)
 
        elm_object_part_text_set(priv->base, PART_TOP_TITLE, STR_APPS);
 
-       box = add_box(priv->base, PART_MENU, EINA_TRUE,
+       box = utils_add_box(priv->base, PART_MENU, EINA_TRUE,
                        SIZE_MENU_BOX_PAD_H, SIZE_MENU_BOX_PAD_V);
        if (!box) {
                _ERR("Add box failed.");
@@ -651,7 +649,8 @@ static bool _draw_top_area(struct _priv *priv)
        }
 
        for (i = 0; i < MENU_COUNT; i++) {
-               btn = add_button(priv->base, NULL, str_menu[i], STYLE_MENU_BTN);
+               btn = utils_add_button(priv->base, NULL, str_menu[i],
+                               STYLE_MENU_BTN);
                if (!btn) {
                        _ERR("elm_button_add failed.");
                        evas_object_del(box);
@@ -688,7 +687,7 @@ static bool _draw_bottom_area(struct _priv *priv)
                return false;
        }
 
-       btn = add_button(priv->base, PART_SORT,
+       btn = utils_add_button(priv->base, PART_SORT,
                        str_sort[priv->sort_type], STYLE_SORT_BTN);
        if (!btn) {
                _ERR("Add button failed.");
@@ -803,7 +802,7 @@ static Evas_Object *_create(Evas_Object *win, void *data)
                return NULL;
        }
 
-       base = add_layout(win, GRP_VIEW_BASE);
+       base = utils_add_layout(win, GRP_VIEW_BASE);
        if (!base) {
                _ERR("Add layout failed.");
                free(priv);