/** @} */
/**
- * @defgroup pkg_operate APIs to install /uninstall / activate application
+ * @defgroup pkg_operate APIs to install /uninstall / application
* @ingroup pkgmgr
* @brief
- * APIs to install /uninstall / activate application
+ * APIs to install /uninstall / application
* - Install application using application package filepath
* - Uninstall application using application package name
- * - Activate application using application package name
*
*/
const char *pkg_name, pkgmgr_mode mode,
pkgmgr_handler event_cb, void *data);
-/**
- * @brief This API activates package.
- *
- * This API is for package-manager client application.\n
- *
- * @param[in] pc pkgmgr_client
- * @param[in] pkg_type package type
- * @param[in] pkg_name package name
- * @return request_id (>0) if success, error code(<0) if fail\n
- * @retval PKGMGR_R_OK success
- * @retval PKGMGR_R_EINVAL invalid argument
- * @retval PKGMGR_R_ECOMM communication error
-*/
-int pkgmgr_client_activate(pkgmgr_client *pc, const char *pkg_type,
- const char *pkg_name);
-
-/**
- * @brief This API deactivates package.
- *
- * This API is for package-manager client application.\n
- *
- * @param[in] pc pkgmgr_client
- * @param[in] pkg_type package type
- * @param[in] pkg_name package name
- * @return request_id (>0) if success, error code(<0) if fail\n
- * @retval PKGMGR_R_OK success
- * @retval PKGMGR_R_EINVAL invalid argument
- * @retval PKGMGR_R_ECOMM communication error
-*/
-int pkgmgr_client_deactivate(pkgmgr_client *pc, const char *pkg_type,
- const char *pkg_name);
-
/**
* @brief This API deletes application's private data.
*
*/
pkgmgr_info * pkgmgr_info_new(const char *pkg_type, const char *pkg_name);
-/**
- * @brief This API gets the package's information.
- *
- * This API is for package-manager client application.\n
- *
- * @param[in] pkg_type package type for the package to get infomation
- * @param[in] pkg_path package file path to get infomation
- * @return package entry pointer if success, NULL if fail\n
-*/
-pkgmgr_info * pkgmgr_info_new_from_file(const char *pkg_type,
- const char *pkg_path);
-
/**
* @brief This API get package information value
*
return req_id;
}
-API int pkgmgr_client_activate(pkgmgr_client * pc, const char *pkg_type,
- const char *pkg_name)
-{
- const char *pkgtype;
- char *req_key;
- char *cookie = NULL;
- int ret;
- /* Check for NULL value of pc */
- if (pc == NULL) {
- _LOGD("package manager client handle is NULL\n");
- return PKGMGR_R_EINVAL;
- }
- pkgmgr_client_t *mpc = (pkgmgr_client_t *) pc;
-
- /* 0. check the pc type */
- if (mpc->ctype != PC_REQUEST)
- return PKGMGR_R_EINVAL;
-
- /* 1. check argument */
- if (pkg_name == NULL)
- return PKGMGR_R_EINVAL;
-
- if (pkg_type == NULL) {
- pkgtype = _get_pkg_type_from_desktop_file(pkg_name);
- if (pkgtype == NULL)
- return PKGMGR_R_EINVAL;
- } else
- pkgtype = pkg_type;
-
- if (strlen(pkg_name) >= PKG_STRING_LEN_MAX)
- return PKGMGR_R_EINVAL;
-
- /* 2. generate req_key */
- req_key = __get_req_key(pkg_name);
-
- /* 3. request activate */
- ret = comm_client_request(mpc->info.request.cc, req_key,
- COMM_REQ_TO_ACTIVATOR, pkgtype,
- pkg_name, "1", cookie, 1);
- if (ret < 0) {
- _LOGE("request failed, ret=%d\n", ret);
- free(req_key);
- return PKGMGR_R_ECOMM;
- }
-
- free(req_key);
-
- return PKGMGR_R_OK;
-}
-
-API int pkgmgr_client_deactivate(pkgmgr_client *pc, const char *pkg_type,
- const char *pkg_name)
-{
- const char *pkgtype;
- char *req_key;
- char *cookie = NULL;
- int ret;
- /* Check for NULL value of pc */
- if (pc == NULL) {
- _LOGD("package manager client handle is NULL\n");
- return PKGMGR_R_EINVAL;
- }
- pkgmgr_client_t *mpc = (pkgmgr_client_t *) pc;
-
- /* 0. check the pc type */
- if (mpc->ctype != PC_REQUEST)
- return PKGMGR_R_EINVAL;
-
- /* 1. check argument */
- if (pkg_name == NULL)
- return PKGMGR_R_EINVAL;
-
- if (pkg_type == NULL) {
- pkgtype = _get_pkg_type_from_desktop_file(pkg_name);
- if (pkgtype == NULL)
- return PKGMGR_R_EINVAL;
- } else
- pkgtype = pkg_type;
-
- if (strlen(pkg_name) >= PKG_STRING_LEN_MAX)
- return PKGMGR_R_EINVAL;
-
- /* 2. generate req_key */
- req_key = __get_req_key(pkg_name);
-
- /* 3. request activate */
- ret = comm_client_request(mpc->info.request.cc, req_key,
- COMM_REQ_TO_ACTIVATOR, pkgtype,
- pkg_name, "0", cookie, 1);
- if (ret < 0) {
- _LOGE("request failed, ret=%d\n", ret);
- free(req_key);
- return PKGMGR_R_ECOMM;
- }
-
- free(req_key);
-
- return PKGMGR_R_OK;
-}
-
API int pkgmgr_client_clear_user_data(pkgmgr_client *pc, const char *pkg_type,
const char *pkg_name, pkgmgr_mode mode)
{
const char *pkgtype;
char *installer_path;
char *req_key;
- int req_id;
int i = 0;
char *argv[PKG_ARGC_MAX] = { NULL, };
char *args = NULL;
plugin_set = _package_manager_load_library(pkgtype);
if (plugin_set == NULL) {
+ _LOGE("*** Failed to load library");
free(pkg_detail_info);
return NULL;
}
if (plugin_set->pkg_is_installed) {
if (plugin_set->pkg_is_installed(pkg_name) != 0) {
+ _LOGE("*** Failed to call pkg_is_installed()");
free(pkg_detail_info);
return NULL;
}
if (plugin_set->get_pkg_detail_info) {
if (plugin_set->get_pkg_detail_info(pkg_name,
pkg_detail_info) != 0) {
+ _LOGE("*** Failed to call get_pkg_detail_info()");
free(pkg_detail_info);
return NULL;
}
DBusConnection *conn;
};
-static int __pkgmgr_installer_receive_request_by_socket(pkgmgr_installer *pi);
-/* Internal func */
-
-static int __pkgmgr_installer_receive_request_by_socket(pkgmgr_installer *pi)
-{
- CHK_PI_RET(-EINVAL);
- int r = 0;
-
-#ifdef USE_SOCKET
- /* TODO: implement this */
-
- /* Try to connect to socket */
- comm_socket_client *csc =
- comm_socket_client_new(pi->quiet_socket_path);
- if (!csc)
- return -EINVAL;
-
- /* Receive request */
- char *req = NULL, *pkg_info = NULL;
- if (0 != comm_socket_client_receive_request(csc, &req, &pkg_info)) {
- r = -EINVAL;
- goto CLEANUP_RET;
- }
-
- /* Verify requester */
-
- /* Set request value */
-
- /* Cleanup */
- CLEANUP_RET:
- if (csc)
- comm_socket_client_free(csc);
-#endif
-
- return r;
-}
/* API */
/* pi->quiet_socket_path = strndup(optarg, MAX_STRLEN);
maximum 255 bytes
return
- __pkgmgr_installer_receive_request_by_socket(pi); */
+ */
break;
// Do something...
pkgmgr_installer_send_signal(pi,
- "deb", "deb.org.tizen.foo", "install_percent", "100");
+ "deb", "org.tizen.foo", "install_percent", "100");
// A sample signal
pkgmgr_installer_free(pi);
-slp-pkgmgr (0.1.100-2) unstable; urgency=low
+slp-pkgmgr (0.1.111) unstable; urgency=low
* Initial Release.
* Git: pkgs/s/slp-pkgmgr
- * Tag: slp-pkgmgr_0.1.100-2
+ * Tag: slp-pkgmgr_0.1.111
- -- Sewook Park <sewook7.park@samsung.com> Wed, 07 Dec 2011 12:55:49 +0900
+ -- Sewook Park <sewook7.park@samsung.com> Fri, 30 Mar 2012 11:50:01 +0900
--- /dev/null
+Name: pkgmgr
+Summary: Packager Manager client library package
+Version: 0.1.111
+Release: 1
+Group: System/Libraries
+License: Apache License, Version 2.0
+Source0: %{name}-%{version}.tar.gz
+BuildRequires: cmake
+BuildRequires: gettext-tools
+BuildRequires: pkgconfig(ecore)
+BuildRequires: pkgconfig(security-server)
+BuildRequires: pkgconfig(dbus-1)
+BuildRequires: pkgconfig(dbus-glib-1)
+BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(aul)
+BuildRequires: pkgconfig(ail)
+BuildRequires: pkgconfig(appcore-efl)
+
+
+%description
+Packager Manager client library package for packaging
+
+
+%package client
+Summary: Package Manager client library develpoment package
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+
+%description client
+Package Manager client library develpoment package for packaging
+
+%package client-devel
+Summary: Package Manager client library develpoment package
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+
+%description client-devel
+Package Manager client library develpoment package for packaging
+
+%package server
+Summary: Package Manager server
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+
+%description server
+Package Manager server for packaging
+
+%package installer
+Summary: Library for installer frontend/backend.
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+
+%description installer
+Library for installer frontend/backend for packaging.
+
+%package installer-devel
+Summary: Dev package for libpkgmgr-installer
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+
+%description installer-devel
+Dev package for libpkgmgr-installer for packaging.
+
+%package types-devel
+Summary: Package Manager client types develpoment package
+Group: TO_BE/FILLED_IN
+Requires: %{name} = %{version}-%{release}
+
+%description types-devel
+Package Manager client types develpoment package for packaging
+
+
+%prep
+%setup -q
+
+cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix}
+
+%build
+
+make %{?jobs:-j%jobs}
+%install
+rm -rf %{buildroot}
+%make_install
+
+
+%post
+/sbin/ldconfig
+
+mkdir -p /usr/etc/package-manager/frontend
+mkdir -p /usr/etc/package-manager/backend
+
+# For pkgmgr-install:
+# Update mime database to support package mime types
+update-mime-database /usr/share/mime
+
+%post server
+
+/sbin/ldconfig
+mkdir -p /usr/etc/package-manager/server
+
+%post client -p /sbin/ldconfig
+
+%postun client -p /sbin/ldconfig
+
+%post installer -p /sbin/ldconfig
+
+%postun installer -p /sbin/ldconfig
+
+%files
+%defattr(-,root,root,-)
+%{_bindir}/pkgcmd
+%exclude %{_bindir}/pkgmgr_backend_sample
+%exclude %{_includedir}/pkgmgr/comm_client.h
+%exclude %{_includedir}/pkgmgr/comm_config.h
+%exclude %{_includedir}/pkgmgr/comm_status_broadcast_server.h
+%exclude %{_libdir}/libpkgmgr_backend_lib_sample.so
+%exclude /usr/etc/package-manager/server/queue_status
+
+%files client
+%defattr(-,root,root,-)
+%{_prefix}/etc/package-manager/pkg_path.conf
+%{_datadir}/mime/packages/mime.wac.xml
+%{_bindir}/pkgmgr-install
+%{_libdir}/libpkgmgr-client.so.*
+/opt/share/applications/org.tizen.pkgmgr-install.desktop
+
+%files client-devel
+%defattr(-,root,root,-)
+%{_includedir}/package-manager.h
+%{_libdir}/pkgconfig/pkgmgr.pc
+%{_libdir}/libpkgmgr-client.so
+
+%files server
+%defattr(-,root,root,-)
+%{_datadir}/dbus-1/services/org.tizen.slp.pkgmgr.service
+%{_bindir}/pkgmgr-server
+%{_datadir}/locale/*/LC_MESSAGES/*.mo
+
+%files installer
+%defattr(-,root,root,-)
+%{_libdir}/libpkgmgr_installer.so.*
+%{_libdir}/libpkgmgr_installer_status_broadcast_server.so.*
+%{_libdir}/libpkgmgr_installer_client.so.*
+
+%files installer-devel
+%defattr(-,root,root,-)
+%{_includedir}/pkgmgr/pkgmgr_installer.h
+%{_libdir}/pkgconfig/pkgmgr-installer-status-broadcast-server.pc
+%{_libdir}/pkgconfig/pkgmgr-installer.pc
+%{_libdir}/pkgconfig/pkgmgr-installer-client.pc
+%{_libdir}/libpkgmgr_installer.so
+%{_libdir}/libpkgmgr_installer_client.so
+%{_libdir}/libpkgmgr_installer_status_broadcast_server.so
+
+%files types-devel
+%defattr(-,root,root,-)
+%{_includedir}/package-manager-types.h
+%{_includedir}/package-manager-plugin.h
+%{_libdir}/pkgconfig/pkgmgr-types.pc
+++ /dev/null
-Name: slp-pkgmgr
-Summary: Packager Manager client library package
-Version: 0.1.100
-Release: 1
-Group: TO_BE/FILLED_IN
-License: Apache-2.0
-Source0: %{name}-%{version}.tar.gz
-BuildRequires: cmake
-BuildRequires: pkgconfig(ecore)
-BuildRequires: pkgconfig(security-server)
-BuildRequires: pkgconfig(dbus-1)
-BuildRequires: pkgconfig(dbus-glib-1)
-BuildRequires: pkgconfig(dlog)
-BuildRequires: pkgconfig(aul)
-BuildRequires: pkgconfig(ail)
-BuildRequires: pkgconfig(appcore-efl)
-BuildRequires: gettext-tools
-
-
-%description
-Packager Manager client library package for packaging
-
-
-%package client
-Summary: Package Manager client library develpoment package
-Group: TO_BE/FILLED_IN
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
-
-%description client
-Package Manager client library develpoment package for packaging
-
-%package client-devel
-Summary: Package Manager client library develpoment package
-Group: TO_BE/FILLED_IN
-
-%description client-devel
-Package Manager client library develpoment package for packaging
-
-%package server
-Summary: Package Manager server
-Group: TO_BE/FILLED_IN
-
-%description server
-Package Manager server for packaging
-
-%package installer
-Summary: Library for installer frontend/backend.
-Group: TO_BE/FILLED_IN
-Requires(post): /sbin/ldconfig, /usr/bin/update-mime-database
-Requires(postun): /sbin/ldconfig
-
-%description installer
-Library for installer frontend/backend for packaging.
-
-%package installer-devel
-Summary: Dev package for libpkgmgr-installer
-Group: TO_BE/FILLED_IN
-
-%description installer-devel
-Dev package for libpkgmgr-installer for packaging.
-
-%package types-devel
-Summary: Package Manager client types develpoment package
-Group: TO_BE/FILLED_IN
-
-%description types-devel
-Package Manager client types develpoment package for packaging
-
-
-%prep
-%setup -q
-
-
-%build
-cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix}
-make %{?jobs:-j%jobs}
-
-%install
-%make_install
-
-mkdir -p %{buildroot}/usr/etc/package-manager/frontend
-mkdir -p %{buildroot}/usr/etc/package-manager/backend
-mkdir -p %{buildroot}/usr/etc/package-manager/server
-
-%find_lang package-manager
-
-%post server
-
-/sbin/ldconfig
-
-%post client -p /sbin/ldconfig
-
-%postun client -p /sbin/ldconfig
-
-%post installer
-/sbin/ldconfig
-update-mime-database /usr/share/mime
-
-%postun installer -p /sbin/ldconfig
-
-
-%files
-%exclude %{_bindir}/pkgmgr_backend_sample
-%exclude %{_includedir}/pkgmgr/comm_client.h
-%exclude %{_includedir}/pkgmgr/comm_config.h
-%exclude %{_includedir}/pkgmgr/comm_status_broadcast_server.h
-%exclude %{_libdir}/libpkgmgr_backend_lib_sample.so
-%exclude /usr/etc/package-manager/server/queue_status
-
-
-%files client -f package-manager.lang
-%{_prefix}/etc/package-manager/pkg_path.conf
-%{_datadir}/mime/packages/mime.wac.xml
-%{_bindir}/pkgmgr-install
-%{_libdir}/libpkgmgr-client.so.*
-/usr/bin/pkgcmd
-/opt/share/applications/org.tizen.pkgmgr-install.desktop
-
-%files client-devel
-%{_includedir}/package-manager.h
-%{_libdir}/pkgconfig/pkgmgr.pc
-%{_libdir}/libpkgmgr-client.so
-
-%files server
-%{_datadir}/dbus-1/services/org.tizen.slp.pkgmgr.service
-%{_bindir}/pkgmgr-server
-%dir /usr/etc/package-manager/frontend
-%dir /usr/etc/package-manager/backend
-%dir /usr/etc/package-manager/server
-
-
-%files installer
-%{_libdir}/libpkgmgr_installer.so.*
-%{_libdir}/libpkgmgr_installer_status_broadcast_server.so.*
-%{_libdir}/libpkgmgr_installer_client.so.*
-
-%files installer-devel
-%{_includedir}/pkgmgr/pkgmgr_installer.h
-%{_libdir}/pkgconfig/pkgmgr-installer-status-broadcast-server.pc
-%{_libdir}/pkgconfig/pkgmgr-installer.pc
-%{_libdir}/pkgconfig/pkgmgr-installer-client.pc
-%{_libdir}/libpkgmgr_installer.so
-%{_libdir}/libpkgmgr_installer_client.so
-%{_libdir}/libpkgmgr_installer_status_broadcast_server.so
-
-%files types-devel
-%{_includedir}/package-manager-types.h
-%{_includedir}/package-manager-plugin.h
-%{_libdir}/pkgconfig/pkgmgr-types.pc
GMainLoop *mainloop = NULL;
-static const char *activate_cmd = "/usr/bin/activator";
/* operation_type */
typedef enum {
pm_desktop_notifier desktop_notifier;
pm_inotify_paths paths[DESKTOP_FILE_DIRS_NUM];
-static
-void response_cb(void *data, Evas_Object *notify, void *event_info);
-static
-int create_popup(struct appdata *ad);
+static void response_cb1(void *data, Evas_Object *notify, void *event_info);
+static void response_cb2(void *data, Evas_Object *notify, void *event_info);
+static int create_popup(struct appdata *ad);
static void sighandler(int signo);
gboolean queue_job(void *data);
static Eina_Bool __directory_notify(void *data, Ecore_Fd_Handler *fd_handler);
}
static
-void response_cb(void *data, Evas_Object *notify, void *event_info)
+void response_cb1(void *data, Evas_Object *notify, void *event_info)
{
struct appdata *ad = (struct appdata *)data;
DBG("start of response_cb()\n");
- if ((int)event_info == ELM_POPUP_RESPONSE_OK) { /* YES */
- DBG("Uninstalling... [%s]\n", ad->item->pkg_name);
+ /* YES */
+ DBG("Uninstalling... [%s]\n", ad->item->pkg_name);
- if (strlen(ad->item->pkg_name) == 0) {
- DBG("package_name is empty\n");
- }
+ if (strlen(ad->item->pkg_name) == 0) {
+ DBG("package_name is empty\n");
+ }
- if (strlen(ad->item->pkg_type) == 0) {
- DBG("Fail : Uninstalling... [%s]\n",
- ad->item->pkg_name);
- free(ad->item);
- evas_object_del(ad->notify);
- evas_object_del(ad->win);
- drawing_popup = 0;
+ if (strlen(ad->item->pkg_type) == 0) {
+ DBG("Fail : Uninstalling... [%s]\n",
+ ad->item->pkg_name);
+ free(ad->item);
+ evas_object_del(ad->notify);
+ evas_object_del(ad->win);
+ drawing_popup = 0;
- return;
- }
+ return;
+ }
- DBG("pkg_type = [%s]\n", ad->item->pkg_type);
+ DBG("pkg_type = [%s]\n", ad->item->pkg_type);
- _pm_queue_push(*(ad->item));
+ _pm_queue_push(*(ad->item));
- } else { /* NO */
- pkgmgr_installer *pi;
- gboolean ret_parse;
- gint argcp;
- gchar **argvp;
- GError *gerr = NULL;
+ /* Free resource */
+ free(ad->item);
+ evas_object_del(ad->notify);
+ evas_object_del(ad->win);
+ /***************/
- pi = pkgmgr_installer_new();
- if (!pi) {
- DBG("Failure in creating the pkgmgr_installer object");
- return;
- }
+ g_idle_add(queue_job, NULL);
- ret_parse = g_shell_parse_argv(ad->item->args,
- &argcp, &argvp, &gerr);
- if (FALSE == ret_parse) {
- DBG("Failed to split args: %s", ad->item->args);
- DBG("messsage: %s", gerr->message);
- pkgmgr_installer_free(pi);
- return;
- }
+ DBG("end of response_cb()\n");
+
+ drawing_popup = 0;
+
+ return;
+}
+
+static
+void response_cb2(void *data, Evas_Object *notify, void *event_info)
+{
+ struct appdata *ad = (struct appdata *)data;
- pkgmgr_installer_receive_request(pi, argcp, argvp);
+ DBG("start of response_cb()\n");
+
+ /* NO */
+ pkgmgr_installer *pi;
+ gboolean ret_parse;
+ gint argcp;
+ gchar **argvp;
+ GError *gerr = NULL;
- pkgmgr_installer_send_signal(pi, ad->item->pkg_type,
- ad->item->pkg_name, "end",
- "cancel");
+ pi = pkgmgr_installer_new();
+ if (!pi) {
+ DBG("Failure in creating the pkgmgr_installer object");
+ return;
+ }
+ ret_parse = g_shell_parse_argv(ad->item->args,
+ &argcp, &argvp, &gerr);
+ if (FALSE == ret_parse) {
+ DBG("Failed to split args: %s", ad->item->args);
+ DBG("messsage: %s", gerr->message);
pkgmgr_installer_free(pi);
+ return;
}
+ pkgmgr_installer_receive_request(pi, argcp, argvp);
+
+ pkgmgr_installer_send_signal(pi, ad->item->pkg_type,
+ ad->item->pkg_name, "end",
+ "cancel");
+
+ pkgmgr_installer_free(pi);
+
/* Free resource */
free(ad->item);
evas_object_del(ad->notify);
return;
}
+
static char *__get_exe_path(const char *pkg_name)
{
ail_appinfo_h handle;
double s;
s = w / DESKTOP_W;
- elm_scale_set(s);
+ elm_config_scale_set(s);
evas_object_show(ad->win);
} else
snprintf(sentence, sizeof(sentence) - 1, _("Invalid request"));
- elm_popup_title_label_set(ad->notify, pkg_name);
+ elm_object_part_text_set(ad->notify, "title,text", pkg_name);
evas_object_size_hint_weight_set(ad->notify, EVAS_HINT_EXPAND,
EVAS_HINT_EXPAND);
-/* elm_popup_mode_set(ad->notify, ELM_POPUP_TYPE_ALERT); */
evas_object_show(ad->notify);
/***********************************/
- elm_popup_desc_set(ad->notify, sentence);
+ elm_object_text_set(ad->notify, sentence);
+
+ Evas_Object *button1 = NULL;
+ Evas_Object *button2 = NULL;
+
+ button1 = elm_button_add(ad->notify);
+ elm_object_text_set(button1, dgettext("sys_string", "IDS_COM_SK_YES"));
+ elm_object_part_content_set(ad->notify, "button1", button1);
+ evas_object_smart_callback_add(button1, "clicked", response_cb1, ad);
- elm_popup_buttons_add(ad->notify, 2,
- dgettext("sys_string", "IDS_COM_SK_YES"),
- ELM_POPUP_RESPONSE_OK, dgettext("sys_string",
- "IDS_COM_SK_NO"),
- ELM_POPUP_RESPONSE_CANCEL, NULL);
- evas_object_smart_callback_add(ad->notify,
- "response", response_cb, ad);
+ button2 = elm_button_add(ad->notify);
+ elm_object_text_set(button2, dgettext("sys_string", "IDS_COM_SK_NO"));
+ elm_object_part_content_set(ad->notify, "button2", button2);
+ evas_object_smart_callback_add(button2, "clicked", response_cb2, ad);
evas_object_show(ad->notify);
Name=pkgmgr-install
Type=Application
Exec=/usr/bin/pkgmgr-install
-Hidden=True
+NoDisplay=True
Version=0.1
-Mimetype=application/x-deb;application/x-java-archive;text/vnd.sun.j2me.app-descriptor;application/widget;application/vnd.wac.widget-sharing
-X-SLP-TaskManage=False
-X-SLP-Multiple=True
-X-SLP-Removable=False
+Mimetype=application/x-deb;application/x-java-archive;text/vnd.sun.j2me.app-descriptor;application/widget;application/vnd.wac.widget-sharing;application/x-rpm;application/x-redhat-package-manager
+X-Tizen-TaskManage=False
+X-Tizen-Multiple=True
+X-Tizen-Removable=False
+X-Tizen-SVC=http://tizen.org/appsvc/operation/view|NULL|application/x-deb;http://tizen.org/appsvc/operation/view|NULL|application/x-java-archive;http://tizen.org/appsvc/operation/view|NULL|text/vnd.sun.j2me.app-descriptor;http://tizen.org/appsvc/operation/view|NULL|application/widget;http://tizen.org/appsvc/operation/view|NULL|application/vnd.wac.widget-sharing;http://tizen.org/appsvc/operation/view|NULL|application/x-rpm;http://tizen.org/appsvc/operation/view|NULL|application/x-redhat-package-manager
\ No newline at end of file
#include <string.h>
#include <unistd.h>
+
#define KEY_MIME_TYPE "__AUL_MIME_TYPE__"
#define KEY_MIME_CONTENT "__AUL_MIME_CONTENT__"
+#define KEY_MIME_TYPE_NEW "__APP_SVC_MIME_TYPE__"
+#define KEY_MIME_CONTENT_NEW "__APP_SVC_URI__"
+
char *supported_mime_type_list[] = {
NULL /* sentinel */
};
errno = 0;
- *mime_type = (char *)bundle_get_val(b, KEY_MIME_TYPE);
- *file_path = (char *)bundle_get_val(b, KEY_MIME_CONTENT);
+ if(bundle_get_val(b, KEY_MIME_CONTENT_NEW)) {
+ /* *mime_type = (char *)bundle_get_val(b, KEY_MIME_TYPE_NEW); */
+ *file_path = (char *)bundle_get_val(b, KEY_MIME_CONTENT_NEW);
+ } else {
+ *mime_type = (char *)bundle_get_val(b, KEY_MIME_TYPE);
+ *file_path = (char *)bundle_get_val(b, KEY_MIME_CONTENT);
+ }
if (errno)
return -1;