extern void clock_viewer_util_pkginfo_fini_clock_package_event(vconf_callback_fn cb);
extern char *clock_viewer_util_pkginfo_get_clock_package(void);
+extern int clock_viewer_util_pkginfo_get_clock_resource_id(void);
extern clock_viewer_ambient_type clock_viewer_util_pkginfo_get_ambient_type(char *appid);
#include "clock-viewer.h"
-extern void clock_viewer_widget_init(void *data, Evas_Object *parent, char *pkgname);
+extern void clock_viewer_widget_init(void *data, Evas_Object *parent, char *pkgname, int resource_id);
extern void clock_viewer_widget_fini(void *data);
extern void clock_viewer_widget_pause(void);
extern void clock_viewer_widget_resume(void);
{
int ret = 0;
- ret = vconf_notify_key_changed(VCONFKEY_WMS_CLOCKS_SET_IDLE, cb, data);
+ ret = vconf_notify_key_changed("memory/homescreen/watch_resource_id", cb, data);
if (ret != 0) {
_ERR("Failed to notify clock set");
}
return vconf_get_str(VCONFKEY_WMS_CLOCKS_SET_IDLE);
}
+HAPI int clock_viewer_util_pkginfo_get_clock_resource_id(void)
+{
+ int resource_id = 0;
+ vconf_get_int("memory/homescreen/watch_resource_id", &resource_id);
+ return resource_id;
+}
+
static inline char *pkgmgr_get_mainapp(const char *pkgid)
{
pkgmgrinfo_pkginfo_h handle;
int view_pos;
int view_pos_timestamp;
+ int resource_id;
} s_widget_info = {
.win = NULL,
.layout = NULL,
.view_pos = 0,
.view_pos_timestamp = 0,
+ .resource_id = 0,
};
}
-HAPI void clock_viewer_widget_init(void *data, Evas_Object *win, char *pkgname)
+HAPI void clock_viewer_widget_init(void *data, Evas_Object *win, char *pkgname, int resource_id)
{
if (s_widget_info.is_widget_init) {
_DBG("widget already initialized");
watch_manager_init(win);
+ watch_manager_set_resource_id(resource_id);
+
evas_object_smart_callback_add(win, WATCH_SMART_SIGNAL_ADDED, _watch_added_cb, data);
evas_object_smart_callback_add(win, WATCH_SMART_SIGNAL_REMOVED, _watch_removed_cb, data);
{
clock_viewer_ambient_type ambient_type;
char *pkgname;
+ int resource_id = 0;
pkgname = clock_viewer_util_pkginfo_get_clock_package();
if (!pkgname) {
return;
}
+ resource_id = clock_viewer_util_pkginfo_get_clock_resource_id();
+ if (!resource_id) {
+ _ERR("resource id is not valid\n");
+ return;
+ }
+
if (s_info.clock_pkgname) {
if (!strcmp(s_info.clock_pkgname, pkgname)) {
_WARN("same pkgname(%s), skip!", pkgname);
/* load new clock */
if (ambient_type == CLOCK_VIEWER_AMBIENT_TYPE_MANUAL) {
if (clock_viewer_util_pkginfo_is_widget(pkgname)) {
- clock_viewer_widget_init(clock_viewer, clock_viewer->window, pkgname);
+ clock_viewer_widget_init(clock_viewer, clock_viewer->window, pkgname, resource_id);
clock_viewer->current_type = CLOCK_VIEWER_TYPE_WIDGET;
} else {
clock_viewer->current_type = CLOCK_VIEWER_TYPE_MINICTRL;