Fixed apptray widget display issue 91/75391/1 submit/tizen/20160617.190924
authorIrfan Abdul <irfan.abdul@samsung.com>
Fri, 17 Jun 2016 18:45:14 +0000 (00:15 +0530)
committerIrfan Abdul <irfan.abdul@samsung.com>
Fri, 17 Jun 2016 18:45:14 +0000 (00:15 +0530)
Change-Id: I070dedc92ca620786fa906222a61e3c952ec1cf6

apptray-widget-app/src/app-widget-app.c
apptray-widget-app/src/common/home_custom_index.c
apptray-widget-app/src/common/home_custom_scroller.c
apptray-widget/src/app-widget.c

index 94bc769d94307203d4891f0968ca81e4e6d2747d..af6609de81096ab0379136b7733912992eb0236a 100755 (executable)
@@ -50,7 +50,7 @@
 #define DEFAULT_APP_ORDER "org.tizen.watch-setting empty empty empty"
 #define APPS_PKG "org.tizen.appptray-widget-app"
 
-#define APP_WIDGET_CONTENT_KEY "org.tizen.apptray-widget-content"
+#define APP_WIDGET_CONTENT_KEY "org.tizen.apptray-widget"
 
 typedef struct appdata {
        Evas_Object *edit_win;
@@ -110,7 +110,7 @@ void updateContent()
        {
        snprintf(content, sizeof(content)-1, "%s %s %s %s", g_info->appid_list[0], g_info->appid_list[1], g_info->appid_list[2], g_info->appid_list[3]);
 
-       int ret = preference_set_string(APP_WIDGET_CONTENT_KEY, content);
+       int ret = preference_set_string(widget_id, content);
        _D("content: %s updated to preference file: ret:%d",content,ret);
 
        }
@@ -122,7 +122,7 @@ void updateContent()
 
 char *_get_date(void)
 {
-
+       _ENTER;
        struct tm st;
        time_t tt = time(NULL);
        localtime_r(&tt, &st);
@@ -140,11 +140,13 @@ char *_get_date(void)
 
 static void _init_theme(void)
 {
+       _ENTER;
        theme = elm_theme_new();
 }
 
 static void _fini_theme(void)
 {
+       _ENTER;
        elm_theme_free(theme);
        theme = NULL;
        if (font_theme) {
@@ -154,6 +156,7 @@ static void _fini_theme(void)
 
 static Eina_Bool _key_release_cb(void *data, int type, void *event)
 {
+       _ENTER;
        Evas_Event_Key_Up *ev = event;
        retv_if(NULL == ev, ECORE_CALLBACK_PASS_ON);
 
@@ -175,7 +178,7 @@ static Eina_Bool _key_release_cb(void *data, int type, void *event)
 }
 
 static void _terminate_add_to_shortcut(void){
-       _D("");
+       _ENTER;
 
        appdata_s *info = _get_info();
        int i = 0;
@@ -191,8 +194,8 @@ static void _terminate_add_to_shortcut(void){
 
                bundle_add_str(b, "test", "delete");
                updateContent();
-               //ret = widget_service_trigger_update(APP-WIDGET-PKGID, widget_id, b, 1);
-               ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
+//             ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
+               //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
                if(WIDGET_ERROR_NONE != ret){
                        _E("app-widget widget trigger failed %d", ret);
                }
@@ -216,9 +219,10 @@ static void _terminate_add_to_shortcut(void){
                snprintf(content, sizeof(content)-1, "%s %s %s %s", g_info->appid_list[0], g_info->appid_list[1], g_info->appid_list[2], g_info->appid_list[3]);
                bundle_add_str(b, "test", content);
                _D("content : %s", content);
-               //ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
+
                updateContent();
-               ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
+//             ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
+               //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
 
                if(WIDGET_ERROR_NONE != ret){
                        _E("app widget widget trigger failed %d", ret);
@@ -243,6 +247,7 @@ static void _terminate_add_to_shortcut(void){
 
 static void _create_edit_win(appdata_s *info, const char *name, const char *title)
 {
+       _ENTER;
        info->edit_win = elm_win_add(NULL, name, ELM_WIN_BASIC);
        ret_if(!info->edit_win);
        evas_object_color_set(info->edit_win, 0, 0, 0, 0);
@@ -257,6 +262,7 @@ static void _create_edit_win(appdata_s *info, const char *name, const char *titl
 
 static void _create_select_win(appdata_s *info, const char *name, const char *title)
 {
+       _ENTER;
        info->select_win = elm_win_add(NULL, name, ELM_WIN_BASIC);
        ret_if(!info->select_win);
 
@@ -271,6 +277,7 @@ static void _create_select_win(appdata_s *info, const char *name, const char *ti
 }
 
 static Eina_Bool _longpress_timer_cb(void *data){
+       _ENTER;
        Evas_Object *item = NULL;
        char index[10] = {0};
        snprintf(index, sizeof(index)-1, "index%d", pressed_index);
@@ -284,6 +291,7 @@ static Eina_Bool _longpress_timer_cb(void *data){
 }
 
 static void _render_post_cb(void *data, Evas *e , void *event_info){
+       _ENTER;
        _D("render finished");
        Evas_Object *slot = (Evas_Object *)data;
 
@@ -292,6 +300,7 @@ static void _render_post_cb(void *data, Evas *e , void *event_info){
 }
 
 static void _mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
+       _ENTER;
 
        _D("icon clicked");
 
@@ -313,18 +322,21 @@ static void _mouse_clicked_cb(void *data, Evas_Object *o, const char *emission,
 
 static void _mouse_down_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon mouse down");
+       _ENTER;
        Evas_Object *icon = elm_object_part_content_get((Evas_Object *)data, "icon");
        evas_object_color_set(icon, 255, 255, 255, 127);
 }
 
 static void _mouse_up_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon mouse up");
+       _ENTER;
        Evas_Object *icon = elm_object_part_content_get((Evas_Object *)data, "icon");
        evas_object_color_set(icon, 255, 255, 255, 255);
 }
 
 static void _plus_mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("plus clicked");
+       _ENTER;
        if(launch_flag == EINA_FALSE){
                launch_flag = EINA_TRUE;
                return;
@@ -335,16 +347,19 @@ static void _plus_mouse_clicked_cb(void *data, Evas_Object *o, const char *emiss
 }
 
 static void _del_mouse_down_cb(void *data, Evas_Object *o, const char *emission, const char *source){
+       _ENTER;
        _D("del mouse down");
        elm_object_signal_emit((Evas_Object *)data, "pressed", "slot");
 }
 
 static void _del_mouse_up_cb(void *data, Evas_Object *o, const char *emission, const char *source){
+       _ENTER;
        _D("del mouse up");
        elm_object_signal_emit((Evas_Object *)data, "released", "slot");
 }
 
 static void _del_mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
+       _ENTER;
        _D("del mouse clicked");
 
        char index[10] = {0};
@@ -443,6 +458,7 @@ static void _down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 }
 
 static void _transit_del_cb(void *data, Elm_Transit *transit){
+       _ENTER;
        _D("transit end");
        char index[10] = {0};
        snprintf(index, sizeof(index)-1, "index%d", pressed_index);
@@ -454,6 +470,7 @@ static void _transit_del_cb(void *data, Elm_Transit *transit){
 }
 
 static void _anim_switch_item(Evas_Object *item, int src, int dst){
+       _ENTER;
        if(transit_go == EINA_TRUE) return;
        transit_go = EINA_TRUE;
        Elm_Transit *transit = elm_transit_add();
@@ -508,6 +525,7 @@ static void _anim_switch_item(Evas_Object *item, int src, int dst){
 
 static void _move_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
+       _ENTER;
        Evas_Event_Mouse_Move *ev = event_info;
        int cur_x, cur_y;
        char *tmp = NULL;
@@ -616,6 +634,7 @@ static Evas_Object *_create_item(Evas_Object *scroller, item_info_s *item_info)
 
        icon = evas_object_image_add(evas_object_evas_get(page));
        evas_object_repeat_events_set(icon, EINA_TRUE);
+       _D("icon:%s ,name:%s",item_info->icon,item_info->name);
        evas_object_image_file_set(icon, item_info->icon, NULL);
        evas_object_image_filled_set(icon, EINA_TRUE);
        evas_object_show(icon);
@@ -633,7 +652,7 @@ static Evas_Object *_create_item(Evas_Object *scroller, item_info_s *item_info)
 }
 
 void app_shortcut_show_name(Evas_Object *page){
-
+       _ENTER;
        appdata_s *info = _get_info();
        item_info_s *item_info = NULL;
        item_info = evas_object_data_get(page, "p_i_n");
@@ -651,7 +670,7 @@ void app_shortcut_show_name(Evas_Object *page){
 }
 
 void app_shortcut_hide_name(){
-
+       _ENTER;
        appdata_s *info = _get_info();
        if(hide_flag == EINA_FALSE){
                _D("hide app name");
@@ -662,6 +681,7 @@ void app_shortcut_hide_name(){
 }
 #ifdef TIZEN_SDK
 Evas_Object *_set_app_slot(const char *appid, int pos){
+       _ENTER;
        package_info_h appinfo_h = NULL;
        _D("%s", appid);
        char *icon_path_tmp = NULL;
@@ -812,7 +832,7 @@ Evas_Object *_set_app_slot(const char *appid, int pos){
                        } else {
                                icon_path_tmp = strdup(DEFAULT_ICON);
                        }
-       
+
 
                if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_label(appinfo_h, &label)){
                        _E("get label failed");
@@ -866,6 +886,7 @@ Evas_Object *_set_app_slot(const char *appid, int pos){
 }
 #endif
 static void _create_edit_layout(appdata_s *info){
+       _ENTER;
        int ret = 0;
        Evas_Object *layout = NULL;
        layout = elm_layout_add(info->edit_win);
@@ -887,6 +908,7 @@ static void _create_edit_layout(appdata_s *info){
 
 
 static void _create_layout(appdata_s *info){
+       _ENTER;
        Evas_Object *layout = NULL;
        int ret = 0;
        Eina_List *item_info_list = NULL;
@@ -929,7 +951,7 @@ static void _create_layout(appdata_s *info){
        info->scroller = scroller;
        elm_object_part_content_set(layout, "scroller", scroller);
 
-       
+
        evas_object_show(scroller);
        _D("scroller create done");
        /* get apps list */
@@ -975,6 +997,7 @@ static void _create_layout(appdata_s *info){
 
 void apps_item_info_destroy(item_info_s *item_info)
 {
+       _ENTER;
        ret_if(!item_info);
 
        if (item_info->pkgid) free(item_info->pkgid);
@@ -987,7 +1010,7 @@ void apps_item_info_destroy(item_info_s *item_info)
 
 item_info_s *apps_apps_info_create(const char *appid)
 {
-
+       _ENTER;
        item_info_s *item_info = NULL;
        #ifdef TIZEN_SDK
        package_info_h appinfo_h = NULL;
@@ -1034,7 +1057,7 @@ item_info_s *apps_apps_info_create(const char *appid)
                goto_if(NULL == item_info->pkgid, ERROR);
        }
 #endif
-       
+
        item_info->appid = strdup(appid);
        goto_if(NULL == item_info->appid, ERROR);
 
@@ -1088,7 +1111,7 @@ ERROR:
 
 item_info_s *apps_recent_info_create(const char *appid)
 {
-
+       _ENTER;
        item_info_s *item_info = NULL;
        #ifdef TIZEN_SDK
        package_info_h appinfo_h = NULL;
@@ -1117,6 +1140,7 @@ item_info_s *apps_recent_info_create(const char *appid)
        goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &name), ERROR);
        goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(appinfo_h, &icon), ERROR);
        goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &type), ERROR);
+       item_info->pkgid = strdup(appid);
        #else
        goto_if(0 > pkgmgrinfo_appinfo_get_appinfo(appid, &appinfo_h), ERROR);
        goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_label(appinfo_h, &name), ERROR);
@@ -1134,7 +1158,7 @@ item_info_s *apps_recent_info_create(const char *appid)
                goto_if(NULL == item_info->pkgid, ERROR);
        }
        #endif
-       item_info->pkgid = strdup(appid);
+
        item_info->appid = strdup(appid);
        goto_if(NULL == item_info->appid, ERROR);
 
@@ -1178,7 +1202,7 @@ item_info_s *apps_recent_info_create(const char *appid)
 
 ERROR:
        apps_item_info_destroy(item_info);
-       
+
        #ifdef TIZEN_SDK
        if (appinfo_h) package_info_destroy(appinfo_h);
        #else
@@ -1270,6 +1294,7 @@ ERROR:
 
 item_info_s *apps_item_info_create(const char *appid)
 {
+       _ENTER;
        item_info_s *item_info = NULL;
        pkgmgrinfo_appinfo_h appinfo_h = NULL;
        pkgmgrinfo_pkginfo_h pkghandle = NULL;
@@ -1293,6 +1318,7 @@ item_info_s *apps_item_info_create(const char *appid)
 
        goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_label(appinfo_h, &name), ERROR);
        goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_icon(appinfo_h, &icon), ERROR);
+       _D("name:%s, icon:%s",name,icon);
 
        do {
                break_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_pkgid(appinfo_h, &pkgid));
@@ -1309,7 +1335,7 @@ item_info_s *apps_item_info_create(const char *appid)
        if (!enabled) goto ERROR;
 
        goto_if(PMINFO_R_OK != pkgmgrinfo_pkginfo_get_type(pkghandle, &type), ERROR);
-       
+
        if (pkgid) {
                item_info->pkgid = strdup(pkgid);
                goto_if(NULL == item_info->pkgid, ERROR);
@@ -1339,7 +1365,7 @@ item_info_s *apps_item_info_create(const char *appid)
                }
        }
 
-       
+
                if (icon) {
                        if (strlen(icon) > 0) {
                                item_info->icon = strdup(icon);
@@ -1352,7 +1378,7 @@ item_info_s *apps_item_info_create(const char *appid)
                        item_info->icon = strdup(DEFAULT_ICON);
                        goto_if(NULL == item_info->icon, ERROR);
                }
-       
+
 
        item_info->removable = removable;
 
@@ -1373,6 +1399,7 @@ ERROR:
 
 static int _apps_sort_cb(const void *d1, const void *d2)
 {
+       _ENTER;
        item_info_s *tmp1 = (item_info_s *) d1;
        item_info_s *tmp2 = (item_info_s *) d2;
 
@@ -1437,7 +1464,7 @@ static Eina_List *_read_all_apps(Eina_List **list)
                _E("Error in package_manager_filter_foreach_package_info ret:%d",ret);
                goto ERROR;
        }
-       
+
        *list = eina_list_sort(*list, eina_list_count(*list), _apps_sort_cb);
 
 ERROR:
@@ -1450,6 +1477,7 @@ ERROR:
 #else
 static int _apps_all_cb(pkgmgrinfo_appinfo_h handle, void *user_data)
 {
+       _ENTER;
        Eina_List **list = user_data;
        char *appid = NULL;
        item_info_s *item_info = NULL;
@@ -1458,6 +1486,7 @@ static int _apps_all_cb(pkgmgrinfo_appinfo_h handle, void *user_data)
        retv_if(NULL == user_data, 0);
 
        pkgmgrinfo_appinfo_get_appid(handle, &appid);
+       _D("appid:%s",appid);
        retv_if(NULL == appid, 0);
 
        item_info = apps_item_info_create(appid);
@@ -1473,6 +1502,7 @@ static int _apps_all_cb(pkgmgrinfo_appinfo_h handle, void *user_data)
 
 static Eina_List *_read_all_apps(Eina_List **list)
 {
+       _ENTER;
        pkgmgrinfo_appinfo_filter_h handle = NULL;
 
        retv_if(PMINFO_R_OK != pkgmgrinfo_appinfo_filter_create(&handle), NULL);
@@ -1504,12 +1534,14 @@ void create_add_to_shortcut(const char *widget_name, const char *index){
 static void
 app_pause(void *data)
 {
+       _ENTER;
        _D("check");
 }
 
 static void
 app_terminate(void *data)
 {
+       _ENTER;
        _D("check");
        _fini_theme();
        feedback_deinitialize();
@@ -1518,11 +1550,13 @@ app_terminate(void *data)
 static void
 app_resume(void *data)
 {
+       _ENTER;
        _D("check");
 }
 
 static void app_control(app_control_h service, void *data)
 {
+       _ENTER;
        _D("test");
        char *content = NULL;
 
@@ -1548,8 +1582,17 @@ static void app_control(app_control_h service, void *data)
        //content = strdup(DEFAULT_APP_ORDER);
        //todo: content
        //read from preference key, if not exist then load default app order string else, load the existing app order string
+       char *instance_id = NULL;
+       ret = app_control_get_extra_data(service, "instance_id", &instance_id);
+       if(!ret)
+       {
+               _E("widget id is null check");
+       }
+       //todo: change this when whome is able to fetch widget instance id.
+       //widget_id = strdup(instance_id);
+       widget_id = strdup(APP_WIDGET_CONTENT_KEY);
        bool prefkey_exist = false;
-       ret = preference_is_existing(APP_WIDGET_CONTENT_KEY, &prefkey_exist);
+       ret = preference_is_existing(widget_id, &prefkey_exist);
        if(ret !=PREFERENCE_ERROR_NONE)
        {
                _E("preference_is_existing api failed ret:%d ",ret);
@@ -1561,7 +1604,7 @@ static void app_control(app_control_h service, void *data)
                if(prefkey_exist)
                {
                        _D("preference key is already exist");
-                       ret = preference_get_string(APP_WIDGET_CONTENT_KEY, &content);
+                       ret = preference_get_string(widget_id, &content);
                        if(ret != PREFERENCE_ERROR_NONE)
                        {
                                _E("preference_get_string api failed, so load default app order ret:%d",ret);
@@ -1571,7 +1614,7 @@ static void app_control(app_control_h service, void *data)
                else
                {
                        _E("preference_key is not exist. check why key is not present. key should present always");
-                       ret = preference_set_string(APP_WIDGET_CONTENT_KEY, DEFAULT_APP_ORDER);
+                       ret = preference_set_string(widget_id, DEFAULT_APP_ORDER);
                        if(ret != PREFERENCE_ERROR_NONE)
                        {
                                _E("preference_set_string api failed ret:%d",ret);
@@ -1629,8 +1672,9 @@ static void app_control(app_control_h service, void *data)
 
                bundle_add_str(b, "test", tmp);
                _D("content : %s", tmp);
-               //ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
-               ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
+
+//             ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
+               //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
                if(WIDGET_ERROR_NONE != ret){
                        _E("app-widget trigger failed %x", ret);
                }
@@ -1647,6 +1691,7 @@ static void app_control(app_control_h service, void *data)
                                _set_app_slot(strtok_r(NULL, " ",&save), i);
                        }
                }
+               updateContent();
        }
 
        free(content);
@@ -1657,6 +1702,7 @@ static void app_control(app_control_h service, void *data)
 static void
 ui_app_lang_changed(app_event_info_h event_info, void *user_data)
 {
+       _ENTER;
        /*APP_EVENT_LANGUAGE_CHANGED*/
        char *locale = NULL;
        system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &locale);
@@ -1668,6 +1714,7 @@ ui_app_lang_changed(app_event_info_h event_info, void *user_data)
 static void
 ui_app_orient_changed(app_event_info_h event_info, void *user_data)
 {
+       _ENTER;
        /*APP_EVENT_DEVICE_ORIENTATION_CHANGED*/
        return;
 }
@@ -1675,23 +1722,27 @@ ui_app_orient_changed(app_event_info_h event_info, void *user_data)
 static void
 ui_app_region_changed(app_event_info_h event_info, void *user_data)
 {
+       _ENTER;
        /*APP_EVENT_REGION_FORMAT_CHANGED*/
 }
 
 static void
 ui_app_low_battery(app_event_info_h event_info, void *user_data)
 {
+       _ENTER;
        /*APP_EVENT_LOW_BATTERY*/
 }
 
 static void
 ui_app_low_memory(app_event_info_h event_info, void *user_data)
 {
+       _ENTER;
        /*APP_EVENT_LOW_MEMORY*/
 }
 
 static bool app_create(void *data)
 {
+       _ENTER;
        _D("check");
        appdata_s *info = data;
 
@@ -1700,10 +1751,10 @@ static bool app_create(void *data)
        _create_select_win(info, "__SELECT_LIST__", "_SELECT_LIST__");
        _init_theme();
        feedback_initialize();
-       
+
        _create_edit_layout(info);
        evas_object_show(info->edit_win);
-       
+
 
        g_info->release_handler = ecore_event_handler_add(ECORE_EVENT_KEY_UP, _key_release_cb, NULL);
        return true;
@@ -1711,6 +1762,7 @@ static bool app_create(void *data)
 
 int main(int argc, char *argv[])
 {
+       _ENTER;
        _D("check");
        appdata_s ad = {0,};
                int ret = 0;
index 4fd4433272b5f99a3ca0a08657634d722ef05673..c3a599e3b80b53248f0e03967cfd4620843b39cf 100755 (executable)
@@ -99,6 +99,7 @@ static const char *_index_style_get(int index, int even)
 
 HAPI void home_custom_index_bring_in_page(Evas_Object *index, Evas_Object *page)
 {
+       _ENTER;
        Elm_Object_Item *idx_it = NULL;
        const Eina_List *l = NULL;
        hc_index_info_s *index_info = NULL;
@@ -138,6 +139,7 @@ HAPI void home_custom_index_bring_in_page(Evas_Object *index, Evas_Object *page)
 
 HAPI Evas_Object *home_custom_index_create(Evas_Object *parent, Evas_Object *scroller)
 {
+       _ENTER;
        Evas_Object *index = NULL;
        hc_index_info_s *index_info = NULL;
 
@@ -173,6 +175,7 @@ HAPI Evas_Object *home_custom_index_create(Evas_Object *parent, Evas_Object *scr
 
 HAPI void home_custom_index_destroy(Evas_Object *index)
 {
+       _ENTER;
        hc_index_info_s *index_info = NULL;
        page_index_s *page_index = NULL;
 
@@ -198,6 +201,7 @@ HAPI void home_custom_index_destroy(Evas_Object *index)
 #define MAX_INDEX_NUMBER 20
 static void _update_index(Evas_Object *scroller, Evas_Object *index, const Eina_List *list)
 {
+       _ENTER;
        Evas_Object *page = NULL;
        const Eina_List *l = NULL;
 
@@ -241,7 +245,7 @@ static void _update_index(Evas_Object *scroller, Evas_Object *index, const Eina_
                style_base = (MAX_INDEX_NUMBER/2) - (total_inserted / 2) - 1;
        }
        _D("style even:%d,style base:%d",style_even,style_base);
-       
+
        EINA_LIST_FOREACH(list, l, page) {
                if (index_number < total_inserted) {
                        if (!cur_inserted) {
@@ -249,7 +253,7 @@ static void _update_index(Evas_Object *scroller, Evas_Object *index, const Eina_
                        }
 
                        cur_inserted++;
-                       
+
 #ifdef RUN_ON_DEVICE
                        Elm_Object_Item *idx_it  = elm_index_item_append(index, NULL, NULL, (void *) index_number);
                        elm_object_item_style_set(idx_it, _index_style_get(style_base + index_number, style_even));
@@ -284,6 +288,7 @@ static void _update_index(Evas_Object *scroller, Evas_Object *index, const Eina_
 
 HAPI void home_custom_index_update(Evas_Object *index, Evas_Object *scroller, hc_index_bring_in_e after)
 {
+       _ENTER;
        Evas_Object *page_current = NULL;
        Eina_List *page_list = NULL;
 
@@ -319,6 +324,7 @@ HAPI void home_custom_index_update(Evas_Object *index, Evas_Object *scroller, hc
 
 static Eina_Bool _index_hide_timer_cb(void *data)
 {
+       _ENTER;
        Evas_Object *index = (Evas_Object*)data;
        retv_if(!index, ECORE_CALLBACK_CANCEL);
 
@@ -340,6 +346,7 @@ static Eina_Bool _index_hide_timer_cb(void *data)
 
 HAPI void home_custom_index_show(Evas_Object *index, Eina_Bool bAutoHide)
 {
+       _ENTER;
        Ecore_Timer *timer = NULL;
 
        ret_if(!index);
index 21307330f6db14a21673da3f485df990396bf1a3..810dc1f3c38b17fbc2271f1e0e29f6cb9c8e20ad 100755 (executable)
@@ -58,6 +58,7 @@ int home_custom_scroller_get_current_page_no(Evas_Object *scroller);
 
 static void _scroller_mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
+       _ENTER;
        Evas_Event_Mouse_Down *ei = event_info;
        ret_if(!ei);
 
@@ -69,6 +70,7 @@ static void _scroller_mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void
 
 static void _scroller_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
+       _ENTER;
        Evas_Event_Mouse_Up *ei = event_info;
        ret_if(!ei);
 
@@ -83,13 +85,14 @@ static void _scroller_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *e
 
 static void _default_anim_start_cb(void *data, Evas_Object *scroller, void *event_info)
 {
+       _ENTER;
        _D("start the scroller animation");
        evas_object_data_set(scroller, PRIVATE_DATA_KEY_IS_SCROLLING, (void *)1);
 
        void *(*_anim_start_cb)(void *, Evas_Object *, void *);
        _anim_start_cb = evas_object_data_get(scroller, PRIVATE_DATA_KEY_SCROLLER_ANIM_START_FN);
        if(_anim_start_cb) _anim_start_cb(data, scroller, event_info);
-       
+
        Evas_Object *page = home_custom_scroller_get_current_page(scroller);
        ret_if(!page);
 }
@@ -98,6 +101,7 @@ static void _default_anim_start_cb(void *data, Evas_Object *scroller, void *even
 
 static void _default_anim_stop_cb(void *data, Evas_Object *scroller, void *event_info)
 {
+       _ENTER;
        _D("stop the scroller animation");
 
        void *(*_anim_stop_cb)(void *, Evas_Object *, void *);
@@ -122,6 +126,7 @@ static void _default_anim_stop_cb(void *data, Evas_Object *scroller, void *event
 
 static void _default_drag_start_cb(void *data, Evas_Object *scroller, void *event_info)
 {
+       _ENTER;
        ret_if(!scroller);
 
        _D("start to drag the scroller animation");
@@ -146,6 +151,7 @@ static void _default_drag_start_cb(void *data, Evas_Object *scroller, void *even
 
 static void _default_drag_stop_cb(void *data, Evas_Object *scroller, void *event_info)
 {
+       _ENTER;
        ret_if(!scroller);
 
        _D("stop to drag the scroller animation");
@@ -161,6 +167,7 @@ static void _default_drag_stop_cb(void *data, Evas_Object *scroller, void *event
 
 static void _default_scroll_cb(void *data, Evas_Object *scroller, void *event_info)
 {
+       _ENTER;
        ret_if(!scroller);
 
        evas_object_data_set(scroller, PRIVATE_DATA_KEY_IS_SCROLLING, (void *)1);
@@ -179,6 +186,7 @@ static void _default_scroll_cb(void *data, Evas_Object *scroller, void *event_in
 
 static void _init_rotary(Evas_Object *scroller)
 {
+       _ENTER;
        _D("Initialize the rotary event");
 //     eext_rotary_event_callback_set(scroller, _rotary_cb, NULL);
 }
@@ -187,6 +195,7 @@ static void _init_rotary(Evas_Object *scroller)
 
 static void _destroy_rotary(Evas_Object *scroller)
 {
+       _ENTER;
        _D("Finish the rotary event");
 //     eext_rotary_event_callback_set(scroller, NULL, NULL);
 }
@@ -210,6 +219,7 @@ void home_custom_scroller_register_cb(Evas_Object *scroller,
                                                                        void _drag_stop_cb(void *, Evas_Object *, void *),
                                                                        void _scroll_cb(void *, Evas_Object *, void *))
 {
+       _ENTER;
        ret_if(!scroller);
 
        evas_object_data_set(scroller, PRIVATE_DATA_KEY_SCROLLER_ANIM_START_FN, _anim_start_cb);
@@ -222,6 +232,7 @@ void home_custom_scroller_register_cb(Evas_Object *scroller,
 
 void home_custom_scroller_deregister_cb(Evas_Object *scroller)
 {
+       _ENTER;
        ret_if(!scroller);
 
        evas_object_data_del(scroller, PRIVATE_DATA_KEY_SCROLLER_ANIM_START_FN);
@@ -329,6 +340,7 @@ ERROR:
 
 void home_custom_scroller_del(Evas_Object *scroller)
 {
+       _ENTER;
        Evas_Object *page = NULL;
        Eina_List *box_list = NULL;
        scroller_info_s *scroller_info = NULL;
@@ -367,12 +379,14 @@ void home_custom_scroller_del(Evas_Object *scroller)
 
 void home_custom_scroller_pause(Evas_Object *scroller)
 {
+       _ENTER;
        _D("");
 }
 
 
 void home_custom_scroller_resume(Evas_Object *scroller)
 {
+       _ENTER;
        eext_rotary_object_event_activated_set(scroller, EINA_TRUE);
 
        Evas_Object *index = (Evas_Object*)evas_object_data_get(scroller, PRIVATE_DATA_KEY_INDEX);
@@ -394,6 +408,7 @@ static void _page_mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *eve
 
 static void _page_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
+       _ENTER;
        Evas_Event_Mouse_Up *ei = event_info;
        ret_if(!ei);
 
@@ -428,6 +443,7 @@ void home_custom_scroller_page_append(Evas_Object *scroller, Evas_Object *page)
 
 void home_custom_scroller_page_prepend(Evas_Object *scroller, Evas_Object *page)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
 
        ret_if(!scroller);
@@ -451,6 +467,7 @@ void home_custom_scroller_page_prepend(Evas_Object *scroller, Evas_Object *page)
 
 void home_custom_scroller_page_remove(Evas_Object *scroller, Evas_Object *page)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
 
        ret_if(!scroller);
@@ -475,6 +492,7 @@ void home_custom_scroller_page_remove(Evas_Object *scroller, Evas_Object *page)
 
 int home_custom_scroller_get_page_count(Evas_Object *scroller)
 {
+       _ENTER;
        int count = 0;
        Eina_List *page_list = NULL;
        scroller_info_s *scroller_info = NULL;
@@ -498,6 +516,7 @@ int home_custom_scroller_get_page_count(Evas_Object *scroller)
 
 void home_custom_scroller_list_append(Evas_Object *scroller, Eina_List *page_list)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
        Eina_List *l = NULL;
        Eina_List *n = NULL;
@@ -527,6 +546,7 @@ void home_custom_scroller_list_append(Evas_Object *scroller, Eina_List *page_lis
 
 void home_custom_scroller_list_remove(Evas_Object *scroller, Eina_List *page_list)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
        Eina_List *l = NULL;
        Eina_List *n = NULL;
@@ -550,6 +570,7 @@ void home_custom_scroller_list_remove(Evas_Object *scroller, Eina_List *page_lis
 
 Eina_List *home_custom_scroller_get_page_list(Evas_Object *scroller)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
        Eina_List *page_list = NULL;
 
@@ -616,6 +637,7 @@ void home_custom_scroller_unedit(Evas_Object *scroller)
 
 void home_custom_scroller_freeze(Evas_Object *scroller, Eina_Bool status)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
 
        ret_if(!scroller);
@@ -635,6 +657,7 @@ void home_custom_scroller_freeze(Evas_Object *scroller, Eina_Bool status)
 
 Eina_Bool home_custom_scroller_is_freeze(Evas_Object *scroller)
 {
+       _ENTER;
        scroller_info_s *scroller_info = NULL;
 
        retv_if(!scroller, EINA_FALSE);
@@ -648,17 +671,20 @@ Eina_Bool home_custom_scroller_is_freeze(Evas_Object *scroller)
 
 void home_custom_scroller_page_freeze(Evas_Object *scroller, Evas_Object *page, Eina_Bool status)
 {
+       _ENTER;
 }
 
 
 Eina_Bool home_custom_scroller_is_page_freeze(Evas_Object *scroller, Evas_Object *page)
 {
+       _ENTER;
        return EINA_FALSE;
 }
 
 
 static Eina_Bool _bring_in_timer_cb(void *data)
 {
+       _ENTER;
        int i = 0;
        Evas_Object *scroller = data;
 
@@ -688,6 +714,7 @@ static Eina_Bool _bring_in_timer_cb(void *data)
 
 void home_custom_scroller_bring_in(Evas_Object *scroller, int page_no)
 {
+       _ENTER;
        Ecore_Timer *timer = NULL;
 
        ret_if(!scroller);
@@ -705,6 +732,7 @@ void home_custom_scroller_bring_in(Evas_Object *scroller, int page_no)
 
 void home_custom_scroller_bring_in_page(Evas_Object *scroller, Evas_Object *page)
 {
+       _ENTER;
        Evas_Object *tmp = NULL;
        Eina_List *page_list = NULL;
        Ecore_Timer *timer = NULL;
@@ -744,6 +772,7 @@ void home_custom_scroller_bring_in_page(Evas_Object *scroller, Evas_Object *page
 
 void home_custom_scroller_bring_in_direction(Evas_Object *scroller, Home_Custom_Sc_Direction direction)
 {
+       _ENTER;
        int hPageNo = 0;
        int vPageNo = 0;
        int nPageCount = 0;
@@ -779,6 +808,7 @@ void home_custom_scroller_bring_in_direction(Evas_Object *scroller, Home_Custom_
 
 Eina_Bool home_custom_scroller_is_scrolling(Evas_Object *scroller)
 {
+       _ENTER;
        retv_if(!scroller, EINA_FALSE);
 
        return evas_object_data_get(scroller, PRIVATE_DATA_KEY_IS_SCROLLING) ? EINA_TRUE:EINA_FALSE;
@@ -787,6 +817,7 @@ Eina_Bool home_custom_scroller_is_scrolling(Evas_Object *scroller)
 
 void home_custom_scroller_region_show(Evas_Object *scroller, int hPageNo, int vPageNo)
 {
+       _ENTER;
        elm_scroller_page_show(scroller, hPageNo, vPageNo);
 
        evas_object_data_del(scroller, PRIVATE_DATA_KEY_IS_SCROLLING);
@@ -801,6 +832,7 @@ void home_custom_scroller_region_show(Evas_Object *scroller, int hPageNo, int vP
 
 Evas_Object *home_custom_scroller_get_first_page(Evas_Object *scroller)
 {
+       _ENTER;
        Eina_List *page_list = NULL;
        scroller_info_s *scroller_info = NULL;
        Evas_Object *page = NULL;
@@ -833,6 +865,7 @@ Evas_Object *home_custom_scroller_get_first_page(Evas_Object *scroller)
 
 Evas_Object *home_custom_scroller_get_last_page(Evas_Object *scroller)
 {
+       _ENTER;
        int count = 0;
        Eina_List *page_list = NULL;
        scroller_info_s *scroller_info = NULL;
@@ -881,6 +914,7 @@ Evas_Object *home_custom_scroller_get_current_page(Evas_Object *scroller)
 
 int home_custom_scroller_get_current_page_no(Evas_Object *scroller)
 {
+       _ENTER;
        int hPageNo = 0;
        int vPageNo = 0;
 
@@ -926,6 +960,7 @@ Evas_Object *home_custom_scroller_get_page(Evas_Object *scroller, int index)
 
 Eina_Bool home_custom_scroller_is_edge(Evas_Object *page)
 {
+       _ENTER;
        retv_if(!page, EINA_FALSE);
 
        return evas_object_data_get(page, PRIVATE_DATA_KEY_EDGE_RECT) ? EINA_TRUE:EINA_FALSE;
@@ -934,6 +969,7 @@ Eina_Bool home_custom_scroller_is_edge(Evas_Object *page)
 /* scroller index */
 Evas_Object *home_custom_scroller_index_add(Evas_Object *parent, Evas_Object *scroller)
 {
+       _ENTER;
        retv_if(!parent, NULL);
        retv_if(!scroller, NULL);
 
@@ -949,6 +985,7 @@ Evas_Object *home_custom_scroller_index_add(Evas_Object *parent, Evas_Object *sc
 
 void home_custom_scroller_index_update(Evas_Object *scroller)
 {
+       _ENTER;
        ret_if(!scroller);
 
        Evas_Object *index = evas_object_data_get(scroller, PRIVATE_DATA_KEY_INDEX);
index db80431e1bc25047e486c1b27b3810c762c3dbb8..caf39a16c08272671d57bbe1596b7b42da650c22 100755 (executable)
@@ -63,7 +63,7 @@
 #define APPS_WIDGET "org.tizen.apptray-widget"
 #define VCONFKEY_WMS_HOST_STATUS_VENDOR "db/wms/host_status/vendor"
 #define APP_TYPE_WGT "wgt"
-#define APP_WIDGET_CONTENT_KEY "org.tizen.apptray-widget-content"
+#define APP_WIDGET_CONTENT_KEY "org.tizen.apptray-widget"
 
 #define DEFAULT_APP_ORDER "org.tizen.watch-setting empty empty empty"
 
@@ -78,7 +78,8 @@ char *icon_path;
 //samsung_log_manager_h log_manager_h = NULL;
 
 struct info {
-       widget_context_h id;
+       //widget_context_h id;
+       char* id;
        char *content;
        int size_type;
        int w;
@@ -96,7 +97,8 @@ struct object_info {
        char *icon;
        char *label;
        char *pkgid;
-       widget_context_h dbox_id;
+//     widget_context_h dbox_id;
+       char* dbox_id;
        int open_app;
        int index;
        Evas_Object *obj;
@@ -115,6 +117,7 @@ static void _set_app_slot(struct info *item, const char *appid, int pos);
 
 static void _get_resource(const char *file_in, char *file_path_out, int file_path_max)
 {
+       _ENTER;
        char *res_path = app_get_resource_path();
        if (res_path) {
                snprintf(file_path_out, file_path_max, "%s%s", res_path, file_in);
@@ -123,25 +126,26 @@ static void _get_resource(const char *file_in, char *file_path_out, int file_pat
 }
 
 
-static inline struct info *find_item(widget_context_h id)
+static inline struct info *find_item(char* id)
 {
+       _ENTER;
        struct info *item=NULL;
-/*
+
        Eina_List *l;
 
        EINA_LIST_FOREACH(s_list, l, item) {
-                       //if (!strcmp(item->id, id)) {
-                       if (item->id == id) {
+                       _D("item->id:%s,id:%s",item->id,id);
+                       if (!strncmp(item->id, id,sizeof(id))) {
                                        return item;
                        }
        }
-       */
-       widget_app_context_get_tag(id, (void**) &item);
+       //widget_app_context_get_tag(id, (void**) &item);
 
        return item;
 }
 
 bool _is_arabic(const char *lang){
+       _ENTER;
        char lang_tmp[10] = { 0, };
        char ar[3] = { 0, };
        int i = 0;
@@ -161,6 +165,7 @@ bool _is_arabic(const char *lang){
 
 static void _init_theme(void)
 {
+       _ENTER;
        theme = elm_theme_new();
 
 }
@@ -169,14 +174,16 @@ static void _init_theme(void)
 
 static void _fini_theme(void)
 {
+       _ENTER;
        elm_theme_free(theme);
        theme = NULL;
-       
+
 }
 
 #define LOCALE_LEN 32
 char *util_get_count_str_from_icu(int count)
 {
+       _ENTER;
        char *p = NULL;
        char *locale_tmp = NULL;
        char *ret_str = NULL;
@@ -197,6 +204,7 @@ char *util_get_count_str_from_icu(int count)
 }
 PUBLIC int widget_initialize(const char *pkgname)
 {
+       _ENTER;
        _D("dbox initialized");
        /**
         * @TODO
@@ -208,6 +216,7 @@ PUBLIC int widget_initialize(const char *pkgname)
 
 PUBLIC int widget_finalize(void)
 {
+       _ENTER;
        _D("dbox finalized");
        /**
         * @TODO
@@ -220,14 +229,15 @@ PUBLIC int widget_finalize(void)
 
 
 // NOTE: This function is going to be invoked for release all resources
-static int widget_destroy(widget_context_h id, widget_app_destroy_type_e reason, bundle *content, void *user_data)
+static int widget_destroy(char* id, widget_app_destroy_type_e reason, bundle *content, void *user_data)
 //PUBLIC int widget_destroy(const char *id)
 {
+       _ENTER;
        struct info *item;
        _D("[%s:%d]\n", __func__, __LINE__);
 
-       //item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                        /*!
                         * \NOTE
@@ -257,18 +267,20 @@ static int widget_destroy(widget_context_h id, widget_app_destroy_type_e reason,
        free(item->content);
        free(item->id);
        free(item);
+//     preference_unset_changed_cb(id);
        preference_unset_changed_cb(APP_WIDGET_CONTENT_KEY);
        return WIDGET_ERROR_NONE;
 }
 
-PUBLIC int widget_need_to_update(const widget_context_h id)
+PUBLIC int widget_need_to_update(const char* id)
 {
+       _ENTER;
        struct info *item;
 
        _D("[%s]\n", id);
 
-       //item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                /* Hmm, there is no matched instance. */
                 _E("id is invalid");
@@ -280,7 +292,7 @@ PUBLIC int widget_need_to_update(const widget_context_h id)
 
 static void _glow_effect_done(void *data, Evas_Object *o, const char *emission, const char *source)
 {
-       _D("");
+       _ENTER;
 
        elm_object_signal_emit((Evas_Object *)data, "complete_effect", "widget");
 
@@ -288,6 +300,7 @@ static void _glow_effect_done(void *data, Evas_Object *o, const char *emission,
 }
 
 void app_shortcut_remove_package(const char *package){
+       _ENTER;
        _D("remove %s", package);
        Eina_List *l;
        struct info *item;
@@ -349,6 +362,7 @@ int item_badge_count(struct object_info *item)
 #define MAX_BADGE_COUNT 999
 void item_badge_show(struct object_info *item, int count)
 {
+       _ENTER;
        char *str = NULL;
        char badge_signal[16];
 
@@ -382,6 +396,7 @@ void item_badge_show(struct object_info *item, int count)
 
 void item_badge_hide(struct object_info *item)
 {
+       _ENTER;
        ret_if(!item);
 
        elm_object_signal_emit(item->obj, "badge,off", "slot");
@@ -390,6 +405,7 @@ void item_badge_hide(struct object_info *item)
 
 static void _badge_change_cb(unsigned int action, const char *appid, unsigned int count, void *data)
 {
+       _ENTER;
        unsigned int is_display = 0;
        badge_error_e err = BADGE_ERROR_NONE;
        int i = 0;
@@ -423,6 +439,7 @@ static void _badge_change_cb(unsigned int action, const char *appid, unsigned in
 
 void item_badge_register_changed_cb(void)
 {
+       _ENTER;
        badge_error_e err;
 
        err = badge_register_changed_cb(_badge_change_cb, NULL);
@@ -431,6 +448,7 @@ void item_badge_register_changed_cb(void)
 
 void item_badge_unregister_changed_cb(void)
 {
+       _ENTER;
        badge_error_e err;
 
        err = badge_unregister_changed_cb(_badge_change_cb);
@@ -440,17 +458,18 @@ void item_badge_unregister_changed_cb(void)
 
 static void _slot_l_mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon clicked");
+       _ENTER;
 
 }
 
 static void _slot_r_mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon clicked");
-
+       _ENTER;
 }
 
 static void _slot_mouse_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon clicked");
-
+       _ENTER;
 
        struct object_info *info = NULL;
        info = data;
@@ -515,6 +534,7 @@ static void _slot_mouse_clicked_cb(void *data, Evas_Object *o, const char *emiss
 
 char *_get_date(void)
 {
+       _ENTER;
        struct tm st;
        time_t tt = time(NULL);
        localtime_r(&tt, &st);
@@ -531,11 +551,13 @@ char *_get_date(void)
 
 static void _slot_mouse_down_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon mouse down");
+       _ENTER;
        evas_object_color_set((Evas_Object *)data, 255, 255, 255, 127);
 }
 
 static void _slot_mouse_up_cb(void *data, Evas_Object *o, const char *emission, const char *source){
        _D("icon mouse up");
+       _ENTER;
        evas_object_color_set((Evas_Object *)data, 255, 255, 255, 255);
 }
 
@@ -852,12 +874,12 @@ static void _set_app_slot(struct info *item, const char *appid, int pos){
 
 }
 
-PUBLIC int widget_update_content(const widget_context_h id)
+PUBLIC int widget_update_content(const char* id)
 {
        _ENTER;
        struct info *item;
-       //item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        int i = 0;
        char *tmp = NULL;
        char *first = NULL;
@@ -904,17 +926,18 @@ static char *_set_content_data(char *content, char *updated_data){
 }
 
 
-PUBLIC int widget_set_content_info(const widget_context_h id, bundle *b)
+PUBLIC int widget_set_content_info(const char* id, bundle *b)
 {
        _ENTER;
+       _D("ID:%s",id);
        struct info *item;
        int ret = 0;
        char uri[256] = {0};
 
        _E("[%s]\n", id);
 
-       //item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                 _E("id is invalid");
                        return WIDGET_ERROR_NOT_EXIST;
@@ -960,13 +983,14 @@ PUBLIC int widget_set_content_info(const widget_context_h id, bundle *b)
        return WIDGET_ERROR_NONE;
 }
 
-PUBLIC int widget_clicked(const widget_context_h id, const char *event, double timestamp, double x, double y)
+PUBLIC int widget_clicked(const char* id, const char *event, double timestamp, double x, double y)
 {
        _ENTER;
+       _D("ID:%s",id);
        _D("dbox clicked");
        struct info *item;
-//     item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                 _E("id is invalid");
                        return WIDGET_ERROR_NOT_EXIST;
@@ -1074,17 +1098,19 @@ static struct object_info *_add_empty_slot(Evas_Object *parent, int pos, struct
        return info;
 }
 
-static Evas_Object *_create_win(widget_context_h context, int w, int h)
+static Evas_Object *_create_win(char* id, int w, int h)
 {
+       _ENTER;
+       _D("ID:%s",id);
        Evas_Object *win = NULL;
        int ret;
 
-       if (context == NULL) {
+       if (id == NULL) {
                dlog_print(DLOG_ERROR, LOG_TAG, "failed to get context.");
                return NULL;
        }
 
-       ret = widget_app_get_elm_win(context, &win);
+       ret = widget_app_get_elm_win(id, &win);
        if (ret != WIDGET_ERROR_NONE) {
                dlog_print(DLOG_ERROR, LOG_TAG, "failed to get window. err = %d", ret);
                return NULL;
@@ -1095,8 +1121,10 @@ static Evas_Object *_create_win(widget_context_h context, int w, int h)
        return win;
 }
 
-static int widget_resize(widget_context_h id, int w, int h, void *user_data)
+static int widget_resize(char* id, int w, int h, void *user_data)
 {
+       _ENTER;
+       _D("ID:%s",id);
        struct info *item;
        int ret;
        Evas_Object *layout = NULL;
@@ -1104,8 +1132,8 @@ static int widget_resize(widget_context_h id, int w, int h, void *user_data)
        char *tmp = NULL;
 
        //preference_remove_all();
-//     item = find_item((char*)id);
-       widget_app_context_get_tag(id,(void**)&item);
+       item = find_item((char*)id);
+       //widget_app_context_get_tag(id,(void**)&item);
        if (!item) {
                 _E("id is invalid");
                        return WIDGET_ERROR_NOT_EXIST;
@@ -1171,7 +1199,9 @@ static int widget_resize(widget_context_h id, int w, int h, void *user_data)
 //todo: item->content
        //read from preference key, if not exist then load default app order string else, load the existing app order string
        bool prefkey_exist = false;
+//     ret = preference_is_existing(id, &prefkey_exist);
        ret = preference_is_existing(APP_WIDGET_CONTENT_KEY, &prefkey_exist);
+
        if(ret !=PREFERENCE_ERROR_NONE)
        {
                _E("preference_is_existing api failed ret:%d ",ret);
@@ -1183,7 +1213,9 @@ static int widget_resize(widget_context_h id, int w, int h, void *user_data)
                if(prefkey_exist)
                {
                        _D("preference key is already exist");
+//                     ret = preference_get_string(id, &item->content);
                        ret = preference_get_string(APP_WIDGET_CONTENT_KEY, &item->content);
+
                        if(ret != PREFERENCE_ERROR_NONE)
                        {
                                _E("preference_get_string api failed, so load default app order ret:%d",ret);
@@ -1193,7 +1225,9 @@ static int widget_resize(widget_context_h id, int w, int h, void *user_data)
                else
                {
                        _E("preference_key is not exist. might be first boot so load default app order and store in preference key");
+//                     ret = preference_set_string(id, DEFAULT_APP_ORDER);
                        ret = preference_set_string(APP_WIDGET_CONTENT_KEY, DEFAULT_APP_ORDER);
+
                        if(ret != PREFERENCE_ERROR_NONE)
                        {
                                _E("preference_set_string api failed ret:%d",ret);
@@ -1228,7 +1262,9 @@ void preference_changed_cb_impl(const char *key, void *user_data)
 {
        _ENTER;
 //     int ret = 0;
-       widget_context_h *id= user_data;
+//     widget_context_h *id= user_data;
+       char *id= *((char**)user_data);
+       _D("id:%s,  key:%s",id,key);
        struct info *item;
        //preference_remove_all();
        if(!id)
@@ -1236,24 +1272,29 @@ void preference_changed_cb_impl(const char *key, void *user_data)
                _E("id is null");
                return;
        }
-//     item = find_item(*id);
-       widget_app_context_get_tag(*id, (void**) &item);
+       item = find_item(id);
+//     widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                 _E("id is invalid");
                _E("item is not found");
                return;
        }
        _D("before content: %s",item->content);
-    preference_get_string(key, &item->content);
+//    preference_get_string(id, &item->content);
+    preference_get_string(APP_WIDGET_CONTENT_KEY, &item->content);
+
     _D("after content: %s",item->content);
 
+       widget_update_content(id);
+
        _EXIT;
 }
 
 // NOTE: This function is going to be invoked for initializing all resources
-static int widget_create(widget_context_h id, bundle *content, int w, int h, void *user_data)
+static int widget_create(char* id, bundle *content, int w, int h, void *user_data)
 {
-       _D("WIDGET is created\n");
+       _ENTER;
+       _D("WIDGET is created with id:%s\n",id);
        struct info *info;
 
        info = malloc(sizeof(*info));
@@ -1261,11 +1302,13 @@ static int widget_create(widget_context_h id, bundle *content, int w, int h, voi
                        return WIDGET_ERROR_OUT_OF_MEMORY;
        }
 
-       info->id = id;
-//     if (!info->id) {
-//                     free(info);
-//                     return WIDGET_ERROR_OUT_OF_MEMORY;
-//     }
+//     info->id = id;
+       info->id = strdup(id);
+       _D("ID:%s",id);
+       if (!info->id) {
+                       free(info);
+                       return WIDGET_ERROR_OUT_OF_MEMORY;
+       }
 
        //info->content = strdup(content);
 //     bundle_get_str(b,"test",&info->content);
@@ -1311,13 +1354,15 @@ static int widget_create(widget_context_h id, bundle *content, int w, int h, voi
         * You create the default output image from here now.
         * So you HAVE TO return WIDGET_OUTPUT_UPDATED
         */
-       preference_set_changed_cb(APP_WIDGET_CONTENT_KEY,preference_changed_cb_impl,&id);
-       widget_app_context_set_tag(id, info);
-       //widget_resize(id,w, h, user_data);
+       //preference_set_changed_cb(id,preference_changed_cb_impl,id);
+       preference_set_changed_cb(APP_WIDGET_CONTENT_KEY,preference_changed_cb_impl,&info->id);
+       //widget_app_context_set_tag(id, info);
+       widget_resize(id,w, h, user_data);
        return WIDGET_ERROR_NONE;
 }
 PUBLIC int widget_need_to_create(const char *cluster, const char *category)
 {
+       _ENTER;
        /**
         * @NOTE
         * You don't need implement this, if don't know what this is.
@@ -1326,12 +1371,13 @@ PUBLIC int widget_need_to_create(const char *cluster, const char *category)
        return 0;
 }
 
-PUBLIC int widget_change_group(const widget_context_h id, const char *cluster, const char *category)
+PUBLIC int widget_change_group(const char* id, const char *cluster, const char *category)
 {
+       _ENTER;
        struct info *item;
 
-       //item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                 _E("id is invalid");
                        return WIDGET_ERROR_NOT_EXIST;
@@ -1357,8 +1403,9 @@ PUBLIC int widget_change_group(const widget_context_h id, const char *cluster, c
        return WIDGET_ERROR_NONE;
 }
 
-PUBLIC int widget_need_to_destroy(const widget_context_h id)
+PUBLIC int widget_need_to_destroy(const char* id)
 {
+       _ENTER;
        /**
         * @NOTE
         * You don't need implement this, if don't know what this is.
@@ -1371,12 +1418,13 @@ PUBLIC int widget_need_to_destroy(const widget_context_h id)
        return 0;
 }
 
-PUBLIC char *widget_pinup(const widget_context_h id, int pinup)
+PUBLIC char *widget_pinup(const char* id, int pinup)
 {
+       _ENTER;
        struct info *item;
 
-//     item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+//     widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                 _E("id is invalid");
                        return NULL;
@@ -1385,12 +1433,14 @@ PUBLIC char *widget_pinup(const widget_context_h id, int pinup)
        return strdup(item->content);
 }
 
-PUBLIC int widget_is_pinned_up(const widget_context_h id)
+PUBLIC int widget_is_pinned_up(const char* id)
 {
+       _ENTER;
+       _D("ID:%s",id);
        struct info *item;
 
-//     item = find_item(id);
-       widget_app_context_get_tag(id, (void**) &item);
+       item = find_item(id);
+       //widget_app_context_get_tag(id, (void**) &item);
        if (!item) {
                        return WIDGET_ERROR_NOT_EXIST;
        }
@@ -1417,7 +1467,7 @@ PUBLIC int widget_is_pinned_up(const widget_context_h id)
 
 void _set_app_label(struct object_info *obj)
 {
-
+       _ENTER;
 }
 
 
@@ -1440,33 +1490,37 @@ widget_app_region_changed(app_event_info_h event_info, void *user_data)
 }
 
 static int
-widget_pause(widget_context_h id, void *user_data)
+widget_pause(char* id, void *user_data)
 {
        _ENTER;
+       _D("ID:%s",id);
        /* Take necessary actions when widget instance becomes invisible. */
        return WIDGET_ERROR_NONE;
 
 }
 
 static int
-widget_resume(widget_context_h id, void *user_data)
+widget_resume(char* id, void *user_data)
 {
        /* Take necessary actions when widget instance becomes visible. */
        _ENTER;
+       _D("ID:%s",id);
        return WIDGET_ERROR_NONE;
 }
 
 static int
-widget_update(widget_context_h id, bundle *content,
+widget_update(char* id, bundle *content,
                              int force, void *user_data)
 {
        _ENTER;
+       _D("ID:%s",id);
        /* Take necessary actions when widget instance should be updated. */
        return WIDGET_ERROR_NONE;
 }
 static widget_class_h
 widget_app_create(void *user_data)
 {
+       _ENTER;
        /* Hook to take necessary actions before main event loop starts.
           Initialize UI resources.
           Make a class for widget instance.
@@ -1493,13 +1547,16 @@ widget_app_create(void *user_data)
 static void
 widget_app_terminate(void *user_data)
 {
+
        /* Release all resources. */
        _ENTER;
+
 }
 
 int
 main(int argc, char *argv[])
 {
+       _ENTER;
        widget_app_lifecycle_callback_s ops = {0,};
        int ret;