diff options
Diffstat (limited to 'src/cp-wallpaper-main.c')
-rwxr-xr-x | src/cp-wallpaper-main.c | 2276 |
1 files changed, 0 insertions, 2276 deletions
diff --git a/src/cp-wallpaper-main.c b/src/cp-wallpaper-main.c deleted file mode 100755 index e5ce007..0000000 --- a/src/cp-wallpaper-main.c +++ /dev/null @@ -1,2276 +0,0 @@ -/* - * starter - * - * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved. - * - * Contact: Seungtaek Chung <seungtaek.chung@samsung.com>, Mi-Ju Lee <miju52.lee@samsung.com>, Xi Zhichan <zhichan.xi@samsung.com> - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include <vconf.h> -#include <vconf-keys.h> -#include <ui-gadget.h> -#include <ui-gadget-module.h> -#include <wallpaper_service.h> -#include <efl_assist.h> -#include <feedback.h> -#include <system_settings.h> - -#include "cp-wallpaper-main.h" -#include "wallpaper-ui-service.h" -#include "wallpaper-ui-service-main.h" - -static Elm_Gen_Item_Class itc_cp_menu_1text1icon; -static Elm_Gen_Item_Class itc_cp_title_2text_expandable; -static Elm_Gen_Item_Class itc_cp_menu_1icon_no_line; -static Elm_Gen_Item_Class itc_cp_help_1text; -static Elm_Gen_Item_Class itc_cp_menu_1text; - - -static Elm_Gen_Item_Class cp_itc_separator; -static Elm_Gen_Item_Class cp_itc_separator2; - -//static Elm_Object_Item *genlist_selected_item = NULL; -static Evas_Object *cp_g_genlist = NULL; -static Evas_Object *interval_popup; - - - -extern Eina_List *cp_wallpaper_list; - -static Ecore_Timer *timer = NULL; -int cp_list_cnt = 0; - - -static cp_wallpaper_ug_data *ug_data = NULL; -static Evas_Object *cp_gengrid = NULL; -static Elm_Gengrid_Item_Class *cp_gic = NULL; -static unsigned int cp_checked_num = 0; -static Elm_Object_Item *cp_navi_item = NULL; -static char navi_title[256] = {0}; -static Evas_Object *done_btn = NULL; - -Evas_Object *main_layout = NULL; -Evas_Object *cp_item_radio = NULL; -static Evas_Object *cp_radio_group = NULL; - -static Elm_Object_Item *item_interval = NULL ; -static Elm_Object_Item *item_wifi = NULL ; -static Elm_Object_Item *item_enhanced = NULL ; -static Elm_Object_Item *item_gengrid = NULL ; - -static Elm_Object_Item *cp_item_radio1h = NULL; -static Elm_Object_Item *cp_item_radio3h = NULL; -static Elm_Object_Item *cp_item_radio6h = NULL; -static Elm_Object_Item *cp_item_radio12h = NULL; - -static int backup_check[100] = {0,}; - -enum { - IDS_COM_SK_OK = 0, - IDS_COM_SK_CANCEL, - IDS_CPWALLPAPER_SYSTEM_STRING_MAX, -}; - -enum { - IDS_CPWALLPAPER_INTERVAL_60min = IDS_CPWALLPAPER_SYSTEM_STRING_MAX, - IDS_CPWALLPAPER_INTERVAL_180min, - IDS_CPWALLPAPER_INTERVAL_360min, - IDS_CPWALLPAPER_INTERVAL_720min, - IDS_CPWALLPAPER_INTERVAL_1440min, - IDS_CPWALLPAPER_APP_STRING_MAX, /* 3 */ -}; - -extern char lock_path[6][MAX_LENGTH_LINE]; - -extern Eina_Bool flag_lock_changed; - -extern Eina_Bool flag_lock_from_default; -extern Eina_Bool flag_lock_from_gallery; -extern Eina_Bool flag_lock_from_cp; - -extern Evas_Object *bg_lock_icon; - -extern Evas_Object *display_popup = NULL; - -#define POPUP_CREATE_FUNC_HANDLE "__POPUP_CREATE_FUNC_HANDLE__" - -static void _del_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_DBG("%p %p", display_popup, obj); - - if(display_popup == obj) { - display_popup = NULL; - } else { - evas_object_del(display_popup); - display_popup = NULL; - } -} - -static void cp_item_check_changed_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_grid_item_s *s_item = (cp_grid_item_s *)data; - if(!s_item) - return; - - Eina_Bool check_state = elm_check_state_get(obj); - if(check_state == EINA_TRUE) { - cp_checked_num++; - WALLPAPERUI_DBG("checked_num=%d", cp_checked_num); - } else { - cp_checked_num--; - WALLPAPERUI_DBG("checked_num=%d", cp_checked_num); - } - - if(cp_checked_num == 0) { - elm_object_disabled_set(done_btn, EINA_TRUE); - } else { - elm_object_disabled_set(done_btn, EINA_FALSE); - } - - snprintf(navi_title, sizeof(navi_title), APP_STRING("IDS_ST_HEADER_PD_SELECTED_ABB"), cp_checked_num); - elm_object_item_part_text_set(cp_navi_item, "default", navi_title); - - s_item->check_state = check_state; -} - -static Evas_Object *cp_grid_content_get(void *data, Evas_Object *obj, const char *part) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_grid_item_s *s_item = (cp_grid_item_s *)data; - if(!s_item) { - return NULL; - } - - if(part != NULL && !strcmp(part, "elm.swallow.icon")) - { - Evas_Object *layout = elm_layout_add(obj); - if(s_item->index == 1) - { - if(elm_layout_file_set(layout, EDJDIR"/popup-wallpaper.edj", "gengrid.item.check") == EINA_FALSE) - { - WALLPAPERUI_DBG("Cannot load gengrid item edj"); - return NULL; - } - s_item->content = layout; - - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL); - - evas_object_show(layout); - - Evas_Object *check = elm_check_add(layout); - evas_object_propagate_events_set(check, EINA_FALSE); - - int status = -1; - int error_code = wallpaper_service_get_category_on_status(s_item->code, &status); - if(WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("check_status [%d] ", status); - if(status == 1) { - s_item->check_state = EINA_TRUE; - cp_checked_num++; - elm_check_state_set(check, EINA_TRUE); - } else { - s_item->check_state = EINA_FALSE; - elm_check_state_set(check, EINA_FALSE); - } - } - - //elm_check_state_set(check, EINA_TRUE); - evas_object_repeat_events_set(check, EINA_FALSE); - elm_object_part_content_set(layout, "check", check); - s_item->check = check; - evas_object_smart_callback_add(check, "changed", cp_item_check_changed_cb, s_item); - -/* Evas_Object *image = elm_image_add(layout); - elm_object_part_content_set(layout, "item", image); - CP_WALLPAPER_DBG("path=%s", s_item->path); - elm_image_file_set(image, s_item->path, NULL); - elm_image_aspect_fixed_set(image, EINA_FALSE); - elm_image_preload_disabled_set(image, EINA_FALSE); - evas_object_show(image);*/ - Evas_Object *bg = elm_bg_add(layout); - if(bg == NULL) { - WALLPAPERUI_DBG("bg is NULL"); - return NULL; - } - elm_object_part_content_set(layout, "item", bg); - evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_bg_option_set(bg, ELM_BG_OPTION_SCALE); - WALLPAPERUI_DBG("path = %s", s_item->path); - elm_bg_file_set(bg, s_item->path, NULL); - evas_object_show(bg); - - WALLPAPERUI_DBG("name = %s", s_item->name); - elm_object_part_text_set(layout, "text", s_item->name); - } - - - return layout; - } - - return NULL; -} - -/* -static void cp_grid_content_del(void *data, Evas_Object *obj, const char *part) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_grid_item_s *s_item = (cp_grid_item_s *)data; - if(!s_item) { - return; - } - - if(s_item->path) { - free(s_item->path); - } - free(s_item); -} -*/ - -static void cp_item_selected(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP); - - cp_grid_item_s *s_item = (cp_grid_item_s *)data; - if(!s_item) - return; - - elm_gengrid_item_selected_set(s_item->item, EINA_FALSE); - s_item->check_state= !(elm_check_state_get(s_item->check)); - elm_check_state_set(s_item->check, s_item->check_state); - - cp_item_check_changed_cb((void *)s_item, s_item->check, NULL); -} - -static char *grid_text_get(void *data, Evas_Object *obj, const char *part) -{ - cp_grid_item_s *s_item = (cp_grid_item_s *)data; - if(!s_item) - return NULL; - - if (!strcmp(part, "elm.text")) - { - WALLPAPERUI_DBG("%s",s_item->name); - return strdup(s_item->name); - } - - return NULL; -} - -static void _realized_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - snprintf(navi_title, sizeof(navi_title), APP_STRING("IDS_ST_HEADER_PD_SELECTED_ABB"), cp_checked_num); - elm_object_item_part_text_set(cp_navi_item, "default", navi_title); -} - -static Evas_Object *cp_gengrid_add(Evas_Object *parent) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_checked_num = 0; - - Evas_Object *gengrid = elm_gengrid_add(parent); - - Elm_Theme *th = elm_theme_new(); - elm_theme_ref_set(th, NULL); - elm_theme_extension_add(th, EDJDIR"/popup-wallpaper.edj"); - elm_object_theme_set(gengrid, th); - - elm_scroller_policy_set(gengrid, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF); - evas_object_size_hint_weight_set(gengrid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(gengrid, EVAS_HINT_FILL, EVAS_HINT_FILL); - - //double scale = elm_config_scale_get(); - //WALLPAPERUI_DBG("scale %f",scale); - elm_gengrid_item_size_set(gengrid, 160, 160); - - elm_gengrid_align_set(gengrid, 0.0, 0.0); - elm_gengrid_horizontal_set(gengrid, EINA_FALSE); - elm_scroller_bounce_set(gengrid, EINA_FALSE, EINA_FALSE); - //elm_gengrid_cache_mode_set(gengrid, EINA_TRUE); - elm_gengrid_multi_select_set(gengrid, EINA_FALSE); - - evas_object_smart_callback_add(gengrid, "realized", _realized_cb, NULL); - - //elm_gengrid_select_mode_set(gengrid, ELM_OBJECT_SELECT_MODE_ALWAYS); - - if(cp_gic != NULL) - { - elm_gengrid_item_class_free(cp_gic); - cp_gic = NULL; - } - - cp_gic = elm_gengrid_item_class_new(); - //cp_gic->item_style = "customized_default_style"; - cp_gic->item_style = "default"; - cp_gic->func.text_get = grid_text_get; - cp_gic->func.content_get = cp_grid_content_get; - cp_gic->func.state_get = NULL; - cp_gic->func.del = NULL; //cp_grid_content_del; - - Eina_List *l = NULL; - cp_grid_item_s *data = NULL; - EINA_LIST_REVERSE_FOREACH(cp_wallpaper_list, l, data) { - if(data != NULL) { - data->index = 1; - data->check_state = EINA_TRUE; - WALLPAPERUI_DBG("path = %s", data->path); - data->item = elm_gengrid_item_append(gengrid, cp_gic, data, cp_item_selected, data); - } - } - - return gengrid; -} - -static void _change_category_cancel_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - if(!popup) { - return; - } - #if 0 - Evas_Object *check = NULL; - check = (Evas_Object*)evas_object_data_get(popup, "check"); - Eina_Bool check_state = elm_check_state_get(check); - WALLPAPERUI_DBG("_change_category_cancel_response_cb. %d",check_state); - if(check_state == EINA_TRUE) - { - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_CHANGE_CATEGORY_DONOTSHOWAGAIN, 1); - } - #endif - - evas_object_del(popup); - popup = NULL; -} - -static void _change_category_download_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - if(!popup) { - return; - } - - Evas_Object *check = NULL; - check = (Evas_Object*)evas_object_data_get(popup, "check"); - Eina_Bool check_state = elm_check_state_get(check); - WALLPAPERUI_DBG("_change_category_cancel_response_cb. %d", check_state); - if(check_state == EINA_TRUE) - { - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_CHANGE_CATEGORY_DONOTSHOWAGAIN, 1); - } - - evas_object_del(popup); - popup = NULL; - - done_button_cb(); - elm_naviframe_item_pop(ug_data->navi_bar); - - WALLPAPERUI_TRACE_END; -} - - -static void _popup_interest_change() -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup; - Evas_Object *layout; - Evas_Object *btn; - Evas_Object *label; - Evas_Object *check; - - popup = elm_popup_add(ug_data->navi_bar); - elm_popup_align_set(popup, ELM_NOTIFY_ALIGN_FILL, 1.0); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - elm_object_part_text_set(popup, "title,text",APP_STRING("IDS_LCKSCN_HEADER_CHANGE_CATEGORY_SELECTION_ABB")); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - /* layout */ - layout = elm_layout_add(popup); - elm_layout_file_set(layout, EDJDIR"/popup-wallpaper.edj", "popup_checkview_layout"); - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_text_set(layout, "elm.text", APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - - /* disable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_CANCEL")); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", _change_category_cancel_response_cb, popup); - - /* enable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_DOWNLOAD_ABB3")); - elm_object_part_content_set(popup, "button2", btn); - evas_object_smart_callback_add(btn, "clicked", _change_category_download_response_cb, popup); - evas_object_show(popup); - - - /* check */ - check = elm_check_add(popup); - elm_object_style_set(check, "popup"); - elm_object_text_set(check, APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_content_set(layout, "elm.swallow.end", check); - evas_object_data_set(popup, "check", check); - - /* label */ - label = elm_label_add(layout); - elm_object_style_set(label, "popup/default"); - elm_label_line_wrap_set(label, ELM_WRAP_MIXED); - elm_object_text_set(label, APP_STRING("IDS_LCKSCN_POP_NEW_WALLPAPER_IMAGES_WILL_BE_DOWNLOADED_FOR_THE_CATEGORY_YOU_JUST_SELECTED_THIS_MAY_RESULT_IN_ADDITIONAL_CHARGES")); - evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0); - evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_show(label); - elm_object_part_content_set(layout, "elm.swallow.content", label); - - elm_object_content_set(popup, layout); - - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); -// evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _popup_center_check_cb); -} - -static void display_toast_popup(void) -{ - char* toast[512] = {0,}; - int wifi_only = 0; - wallpaper_service_get_wifi_only_setting(&wifi_only); - int interval = 0; - wallpaper_service_get_interval(&interval); - if(wifi_only) - { - if(interval==1) - { - strncpy(toast,APP_STRING("IDS_LCKSCN_TPOP_WALLPAPER_WILL_CHANGE_EVERY_HOUR_WHILE_CONNECTED_VIA_WI_FI_ONLY"),512-1); - } - else - { - snprintf(toast,sizeof(toast),APP_STRING("IDS_LCKSCN_TPOP_WALLPAPER_WILL_CHANGE_EVERY_PD_HOURS_WHILE_CONNECTED_VIA_WI_FI_ONLY"),interval ); - } - } - else - { - if(interval==1) - { - strncpy(toast,APP_STRING("IDS_LCKSCN_TPOP_WALLPAPER_WILL_CHANGE_EVERY_HOUR_WHILE_CONNECTED_VIA_WI_FI_OR_MOBILE_NETWORK"),512-1); - } - else - { - snprintf(toast,sizeof(toast),APP_STRING("IDS_LCKSCN_TPOP_WALLPAPER_WILL_CHANGE_EVERY_PD_HOURS_WHILE_CONNECTED_VIA_WI_FI_OR_MOBILE_NETWORK"),interval ); - } - } - - notification_status_message_post(toast); - -} - -void cpwallpaper_changing_TA_launch_request() -{ - WALLPAPERUI_TRACE_BEGIN; - - wallpaper_service_category_code_h handle = NULL; - - Eina_List *l = NULL; - cp_grid_item_s *item = NULL; - int index = 0; - EINA_LIST_REVERSE_FOREACH(cp_wallpaper_list, l, item) { - if(item!=NULL) - { - if(item->check_state==EINA_TRUE) - { - WALLPAPERUI_DBG("CODE ADD %s",item->name); - wallpaper_service_add_category_code(item->code, &handle); - index++; - } - } - } - vconf_set_int(VCONFKEY_LOCKSCREEN_WALLPAPER_COUNT, index); - /* Set Category On*/ - wallpaper_service_set_category_on(handle); - wallpaper_service_free_category_code_handle(handle); - display_toast_popup(); - - if(cp_wallpaper_list!=NULL) - { - cp_info_list_free(cp_wallpaper_list); - cp_wallpaper_list = NULL; - } -} - -static void popup_ok_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_DBG("popup_disable_btn_clicked_cb"); - - Evas_Object *popup = data; - evas_object_del(popup); - - wallpaper_service_set_verfication(1); - done_button_cb(); - elm_naviframe_item_pop(ug_data->navi_bar); -} - -static void popup_disable_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - Evas_Object *popup = data; - evas_object_del(popup); - - wallpaper_service_set_verfication(0); - done_button_cb(); - elm_naviframe_item_pop(ug_data->navi_bar); -} - - -static void _netword_warning_popup_create(void); - - - -static void popup_update_my_interest(void) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup_upsate; - Evas_Object *btn; - - /* popup */ - popup_upsate = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup_upsate, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup_upsate, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_text_set(popup_upsate, APP_STRING("IDS_LCKSCN_POP_RECEIVING_WALLPAPER_IMAGES_AND_ADDITIONAL_INFORMATION_VIA_MOBILE_NETWORKS_MAY_RESULT_IN_ADDITIONAL_CHARGES_MSG")); - elm_object_part_text_set(popup_upsate, "title,text", APP_STRING("IDS_LCKSCN_HEADER_UPDATE_MY_INTERESTS_ABB")); - - - /* OK button */ - btn = elm_button_add(popup_upsate); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_OK_ABB")); - elm_object_part_content_set(popup_upsate, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", popup_ok_btn_clicked_cb, popup_upsate); - evas_object_show(popup_upsate); - -// display_popup = popup; -// evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); -// evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _netword_warning_popup_create); -} - -static void popup_update_my_interest_btn(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - Evas_Object *popup = data; - evas_object_del(popup); - - popup_update_my_interest(); -} - -static void popup_enable_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = data; - if(popup) { - evas_object_del(popup); - } - - Evas_Object *btn; - - /* popup */ - popup = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_text_set(popup, APP_STRING("MIDS_LSM_MSG_TO_PROVIDE_YOU_WITH_A_MORE_ENHANCED_EXPERIENCE_MSG")); - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_OPT_ENABLE_ENHANCED_SERVICE_ABB")); - - - /* disable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_DO_NOT_ENABLE_ABB")); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", popup_disable_btn_clicked_cb, popup); - - /* enable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_ENABLE")); - elm_object_part_content_set(popup, "button2", btn); - evas_object_smart_callback_add(btn, "clicked", popup_update_my_interest_btn, popup); - evas_object_show(popup); - - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _netword_warning_popup_create); -} - -static void _netword_warning_popup_create(void) -{ - if(ug_data) { - popup_enable_btn_clicked_cb(NULL, NULL, NULL); - } else { - WALLPAPERUI_ERR("ug_data is NULL"); - } -} - -static void create_enable_popup() -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup; - Evas_Object *btn; - - /* popup */ - popup = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_text_set(popup, APP_STRING("MIDS_LSM_MSG_TO_PROVIDE_YOU_WITH_A_MORE_ENHANCED_EXPERIENCE_MSG")); - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_HEADER_ENHANCED_SERVICE_ABB")); - - /* disable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_DO_NOT_ENABLE_ABB")); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", popup_disable_btn_clicked_cb, popup); - - /* enable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_ENABLE")); - elm_object_part_content_set(popup, "button2", btn); - //evas_object_smart_callback_add(btn, "clicked", popup_enable_btn_clicked_cb, popup); - evas_object_smart_callback_add(btn, "clicked", popup_update_my_interest_btn, popup); - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, create_enable_popup); -} - -static void cp_cancel_button_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - /*if(cp_wallpaper_list!=NULL) - { - cp_info_list_free(cp_wallpaper_list); - cp_wallpaper_list = NULL; - }*/ - -/* int error = wallpaper_service_deactivate(); - if(error != 0) { - WALLPAPERUI_DBG("wallpaper_service_deactivate fail."); - }*/ - - elm_naviframe_item_pop(ug_data->navi_bar); -} -static int check_checkbox_changed(void) -{ - Eina_List *l = NULL; - cp_grid_item_s *item = NULL; - int index = 0; - int breturn = 1; - - EINA_LIST_REVERSE_FOREACH(cp_wallpaper_list, l, item) { - if(item!=NULL) - { - if(item->check_index<100) - { - if(backup_check[item->check_index]==item->check_state) - { - breturn = 0; - } - else - { - breturn = 1; - break; - } - } - } - } - return breturn; -} -static void cp_done_button_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - if(obj) { - elm_object_signal_emit(obj, "pressed", "elm"); - } - - flag_lock_changed = EINA_TRUE; - flag_lock_from_cp = EINA_TRUE; - flag_lock_from_default = EINA_FALSE; - flag_lock_from_gallery = EINA_FALSE; - - int value1 = 0; - int value2 = 0; - - vconf_get_bool(VCONFKEY_LOCKSCREEN_CP_FIRST_SET, &value1); - wallpaper_service_get_verfication(&value2); - WALLPAPERUI_DBG("set_as_wallpaper_pressed begin %d %d\n", value1, value2); - - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_FIRST_SET, 0); - - elm_image_file_set(bg_lock_icon, DEFAULT_INTEREST_PATH, NULL); - evas_object_show(bg_lock_icon); - - memset(lock_path, 0, sizeof(lock_path)); - strcpy(lock_path[0], DEFAULT_INTEREST_PATH); - - vconf_set_int(VCONFKEY_LOCKSCREEN_WALLPAPER_TYPE, WALLPAPER_TYPE_CP); - WALLPAPERUI_DBG("Set VCONFKEY_LOCKSCREEN_WALLPAPER_TYPE = WALLPAPER_TYPE_CP"); - - if(value1==1 && value2==0) { - create_enable_popup(); - } else { - int changed = 0; - changed = check_checkbox_changed(); - WALLPAPERUI_DBG("changed = %d",changed); - if (changed) - { - int value = 0; - vconf_get_bool(VCONFKEY_LOCKSCREEN_CP_CHANGE_CATEGORY_DONOTSHOWAGAIN,&value); - WALLPAPERUI_DBG("value = %d",value); - if(value==0) - { - _popup_interest_change(); - } - else - { - done_button_cb(); - elm_naviframe_item_pop(ug_data->navi_bar); - } - } - else - { - done_button_cb(); - elm_naviframe_item_pop(ug_data->navi_bar); - } - } -} - -static void _privacy_notice_popup_back_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - evas_object_del(ug_data->popup); - ug_data->popup = NULL; -} - -static void _check_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - - Evas_Object *check = NULL; - check = (Evas_Object*)evas_object_data_get(popup, "check"); - Eina_Bool check_state = elm_check_state_get(check); - WALLPAPERUI_DBG("_check_response_cb. %d",check_state); - if(check_state == EINA_TRUE) - { - WALLPAPERUI_DBG("!!!"); - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_SETPOPUP_DONOTSHOWAGAIN, 1); - } - - evas_object_del(popup); - popup = NULL; - - cp_wallpaper_main_create_view(); -} - -static void _popup_center_check_cb() -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup; - Evas_Object *layout; - Evas_Object *btn; - Evas_Object *label; - Evas_Object *check; - //Evas_Object *win = data; - - popup = elm_popup_add(ug_data->navi_bar); - elm_popup_align_set(popup, ELM_NOTIFY_ALIGN_FILL, 1.0); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_BUTTON2_MY_INTERESTSM_PREFERRED_CATEGORIES_ABB")); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - /* layout */ - layout = elm_layout_add(popup); - elm_layout_file_set(layout, EDJDIR"/popup-wallpaper.edj", "popup_checkview_layout"); - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_text_set(layout, "elm.text", APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - - /* ok button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_OK_ABB")); - //ea_theme_object_color_replace(btn, "W011", "W0111"); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", _check_response_cb, popup); - - /* check */ - check = elm_check_add(popup); - elm_object_style_set(check, "popup"); - elm_object_text_set(check, APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_content_set(layout, "elm.swallow.end", check); - evas_object_data_set(popup, "check", check); - - /* label */ - label = elm_label_add(layout); - elm_object_style_set(label, "popup/default"); - elm_label_line_wrap_set(label, ELM_WRAP_MIXED); - elm_object_text_set(label, APP_STRING("IDS_LCKSCN_POP_SET_YOUR_DEVICE_TO_SHOW_HIGH_QUALITY_IMAGES_BASED_ON_YOUR_INTERESTS_ON_THE_LOCK_SCREEN_SELECT_YOUR_PREFERRED_CATEGORIES")); - evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0); - evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_show(label); - elm_object_part_content_set(layout, "elm.swallow.content", label); - - elm_object_content_set(popup, layout); - - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _popup_center_check_cb); -} - -void cp_wallpaper_main(wallpaper_ui_service_appdata *data) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(data == NULL) { - return; - } - - ug_data = (cp_wallpaper_ug_data *)calloc(1, sizeof(cp_wallpaper_ug_data)); - ug_data->navi_bar = data->navi_bar; - ug_data->win_main = data->win; - - int value = 0; - vconf_get_bool(VCONFKEY_LOCKSCREEN_CP_SETPOPUP_DONOTSHOWAGAIN, &value); - WALLPAPERUI_DBG("value = %d", value); - if(value == 0) { - _popup_center_check_cb(); - } else { - cp_wallpaper_main_create_view(); - } -} - -int cp_info_list_insert(cp_grid_item_s *obj) -{ - Eina_List *l = NULL; - cp_grid_item_s *data = NULL; - - WALLPAPERUI_DBG("%s!",obj->name); - - /* check name */ - EINA_LIST_REVERSE_FOREACH(cp_wallpaper_list, l, data) { - if(data->name == obj->name) - { - WALLPAPERUI_DBG("%s is already exist in the list!", obj->name); - return 0; - } - } - cp_wallpaper_list = eina_list_prepend(cp_wallpaper_list, obj); - - return 0; -} - -int cp_info_list_free(Eina_List *list) -{ - Eina_List *l = NULL; - Eina_List *l_next = NULL; - cp_grid_item_s *data = NULL; - - EINA_LIST_FOREACH_SAFE(list, l, l_next, data) - { - if(data!=NULL) - { - if(data->name!=NULL) - free(data->name); - if(data->path!=NULL) - free(data->path); - if(data->code!=NULL) - free(data->code); - if(data!=NULL) - free(data); - list = eina_list_remove_list(list, l); - if (eina_error_get()) - return 0; - } - } - eina_list_free(list); - list = NULL; - return eina_error_get(); -} - -static void _network_error_popup_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - if(ug_data->popup_progress != NULL ) - { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } - - if(ug_data->popup) { - evas_object_del(ug_data->popup); - ug_data->popup = NULL; - } - - if(ug_data->navi_bar){ - elm_naviframe_item_pop(ug_data->navi_bar); - } -} - -static void _create_network_error_popup(void) -{ - Evas_Object *btn1; - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - ug_data->popup = elm_popup_add(ug_data->navi_bar); - elm_popup_align_set(ug_data->popup, ELM_NOTIFY_ALIGN_FILL, 1.0); - - ea_object_event_callback_add(ug_data->popup, EA_CALLBACK_BACK,_network_error_popup_cb, ug_data); - - //elm_object_style_set(ug_data->popup, "no_effect"); - - elm_object_part_text_set(ug_data->popup, "title,text", APP_STRING("IDS_LCKSCN_HEADER_UNABLE_TO_CONNECT_ABB")); - elm_object_text_set(ug_data->popup, APP_STRING("IDS_CALL_BODY_NETWORK_ERROR_OCCURRED_TRY_LATER")); - btn1 = elm_button_add(ug_data->popup); - elm_object_style_set(btn1, "popup"); - elm_object_text_set(btn1, APP_STRING("IDS_ST_BUTTON_OK_ABB")); - elm_object_part_content_set(ug_data->popup, "button1", btn1); - evas_object_smart_callback_add(btn1, "clicked", _network_error_popup_cb, ug_data); - evas_object_show(ug_data->popup); - - display_popup = ug_data->popup; - evas_object_event_callback_add(ug_data->popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(ug_data->popup, POPUP_CREATE_FUNC_HANDLE, _create_network_error_popup); -} - -static void _update_timer_cb(void *data) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - if(data == NULL) - return; - - if(ug_data->popup_progress != NULL) { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } - - if(cp_gengrid != NULL){ - WALLPAPERUI_DBG("cp_gengrid is not NULL"); - //elm_gengrid_clear(cp_gengrid); - //cp_gengrid = NULL; - //TODO - //cp_wallpaper_setting_update_view(ug_data); - } - - cp_gengrid = cp_gengrid_add(main_layout); - elm_object_part_content_set(main_layout, "cp", cp_gengrid); - - if (timer != NULL) { - ecore_timer_del(timer); - timer = NULL; - } -} - -static void _destroy_timer_cb(void *data) -{ - if(data==NULL) - return; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - WALLPAPERUI_DBG("_destroy_timer_cb begin\n"); - - if(ug_data->popup_progress != NULL) { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } - - _create_network_error_popup(); - - if (timer != NULL) { - ecore_timer_del(timer); - timer = NULL; - } -} - -static void __wallpaper_service_get_category_list_cb(int error_code, void *user_data, wallpaper_service_category_h handle) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(cp_wallpaper_list!=NULL) - { - cp_info_list_free(cp_wallpaper_list); - cp_wallpaper_list = NULL; - } - - if(user_data==NULL) - return; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)user_data; - - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - unsigned int count = 0; - char *tmp; - unsigned int index = 0; - wallpaper_service_get_category_list_count(handle, &count); - cp_list_cnt = count; - if(count>0) - { - for (index=0; index < count; index++) - { - cp_grid_item_s *s_item; - s_item = (cp_grid_item_s *)calloc(1, sizeof(cp_grid_item_s)); - tmp = NULL; - s_item->check_index = index; - error_code = wallpaper_service_get_category_info_code(handle, index, &tmp); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("code [%s] ",tmp); - if(tmp) { - s_item->code = strdup(tmp); - } - g_free(tmp); - } - error_code = wallpaper_service_get_category_info_name(handle, index, &tmp); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("name [%s] ",tmp); - if(tmp) { - s_item->name = strdup(tmp); - } - g_free(tmp); - } - error_code = wallpaper_service_get_category_info_on_img_url(handle, index, &tmp); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("on_img_url [%s] ",tmp); - g_free(tmp); - } - error_code = wallpaper_service_get_category_info_off_img_url(handle, index, &tmp); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("off_img_url [%s] ",tmp); - g_free(tmp); - } - error_code = wallpaper_service_get_category_info_thumbnail_path(handle, index, &tmp); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("thumbnail_path [%s] ",tmp); - if(tmp) { - s_item->path = strdup(tmp); - } - g_free(tmp); - } - int status = 0; - error_code = wallpaper_service_get_category_on_status(s_item->code, &status); - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) { - WALLPAPERUI_DBG("check_status [%d] ",status); - if(status ==1) - { - s_item->check_state = EINA_TRUE; - } - else - { - s_item->check_state = EINA_FALSE; - } - backup_check[index] = status; - } - - WALLPAPERUI_DBG("\n\n"); - s_item->data = user_data; - cp_info_list_insert(s_item); - } - } - wallpaper_service_free_category_info(handle); - - ug_data->category_received = 1; - - timer = ecore_timer_add(0.001, (void *)_update_timer_cb,ug_data); - } - else// if(WALLPAPER_SERVICE_ERROR_TIMEOUT == error_code) - { - timer = ecore_timer_add(0.001, (void *)_destroy_timer_cb,ug_data); - } -/* else - { - CP_WALLPAPER_DBG("Error [%d]", error_code); - }*/ -} - -void __wallpaper_service_activate_cb(int error_code, void *user_data) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)user_data; - if(ug_data==NULL) - { - WALLPAPERUI_ERR("ug_data NULL"); - } - - WALLPAPERUI_DBG("__wallpaper_service_activate_cb %d\n", error_code); - - if (WALLPAPER_SERVICE_ERROR_NONE == error_code) - { - wallpaper_service_get_category_list(__wallpaper_service_get_category_list_cb,ug_data); - } else { - if (timer != NULL) { - ecore_timer_del(timer); - timer = NULL; - } - - timer = ecore_timer_add(0.001, (void *)_destroy_timer_cb,ug_data); - } - - WALLPAPERUI_TRACE_END; -} - -static void _no_network_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - evas_object_del(popup); - popup = NULL; - - //elm_naviframe_item_pop(ug_data->navi_bar); -} - -static void _create_no_network_popup(void) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *btn1; - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - Evas_Object *popup = elm_popup_add(ug_data->navi_bar); - elm_popup_align_set(popup, ELM_NOTIFY_ALIGN_FILL, 1.0); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_HEADER_UNABLE_TO_CONNECT_ABB")); - elm_object_text_set(popup, APP_STRING("IDS_LCKSCN_POP_THERE_IS_NO_NETWORK_CONNECTION_CONNECT_TO_A_WI_FI_NETWORK_OR_TURN_ON_MOBILE_DATA_AND_TRY_AGAIN")); - btn1 = elm_button_add(popup); - elm_object_style_set(btn1, "popup"); - elm_object_text_set(btn1, APP_STRING("IDS_ST_BUTTON_OK_ABB")); - elm_object_part_content_set(popup, "button1", btn1); - evas_object_smart_callback_add(btn1, "clicked", _no_network_response_cb, popup); - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _create_no_network_popup); -} - -static void _wallpaper_move_ctxpopup(Evas_Object *ctxpopup) -{ - WALLPAPERUI_TRACE_BEGIN; - Evas_Object *win; - Evas_Coord w, h; - - int pos = -1; - - /* We convince the top widget is a window */ - win = elm_object_top_widget_get(ctxpopup); - elm_win_screen_size_get(win, NULL, NULL, &w, &h); - pos = elm_win_rotation_get(win); - - switch (pos) { - case 0: - case 180: - evas_object_move(ctxpopup, (w / 2), h); - break; - case 90: - evas_object_move(ctxpopup, (h / 2), w); - break; - case 270: - evas_object_move(ctxpopup, (h / 2), w); - break; - } -} - -static void _lockscreen_more_popup_del_cb(void *data) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd = NULL; - - ret_if(data == NULL); - - ugd = (cp_wallpaper_ug_data *)data; - - if (ugd->more_popup != NULL) { - evas_object_del(ugd->more_popup); - ugd->more_popup = NULL; - } -} - -static void _lockscreen_more_popup_more_cb(void *data, - Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - _lockscreen_more_popup_del_cb((cp_wallpaper_ug_data *)data); -} - -static void _lockscreen_more_popup_back_cb(void *data, - Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - _lockscreen_more_popup_del_cb((cp_wallpaper_ug_data *)data); -} - -static void _lockscreen_more_popup_rotate_cb(void *data, Evas_Object *obj, - void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd; - Evas_Object * ctx; - - ugd = (cp_wallpaper_ug_data *)data; - ret_if(ugd == NULL); - - ctx = ugd->more_popup; - ret_if(ctx == NULL); - - _wallpaper_move_ctxpopup(ctx); - evas_object_show(ctx); -} - -static void _lockscreen_more_popup_dismiss_cb(void *data, Evas_Object *obj, - void *event) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd; - - ugd = (cp_wallpaper_ug_data *)data; - ret_if(ugd == NULL); - ret_if(ugd->more_popup == NULL); - - evas_object_del(ugd->more_popup); - ugd->more_popup = NULL; -} - -static void _lockscreen_more_popup_delete_cb(void *data, Evas *e, - Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - Evas_Object *navi = (Evas_Object *)data; - Evas_Object *ctx = obj; - - ret_if(navi == NULL); - - evas_object_smart_callback_del(ctx, "dismissed", - _lockscreen_more_popup_dismiss_cb); - evas_object_smart_callback_del(elm_object_top_widget_get(ctx), - "rotation,changed", _lockscreen_more_popup_rotate_cb); - evas_object_event_callback_del_full(ctx, EVAS_CALLBACK_DEL, - _lockscreen_more_popup_delete_cb, navi); -} -static void cp_radio_change(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - int index = (int )data; - WALLPAPERUI_DBG("index=%d", index); - if(cp_item_radio) { - elm_radio_value_set(cp_item_radio, index); - } - - wallpaper_service_set_interval(index); - -/* int ret = -1; - ret = vconf_set_int("db/wallpaper-service/interval", index); - if (ret != 0) { - CP_WALLPAPER_DBG("!!!!!!!!!!fails"); - } - vconf_get_int("db/wallpaper-service/interval", &index);*/ - wallpaper_service_get_interval(&index); - WALLPAPERUI_DBG("wallpaper_service_get_interval index=%d", index); - - //delete genlist - elm_genlist_clear(cp_g_genlist); - cp_g_genlist = NULL; - //delete popup - evas_object_del(interval_popup); - interval_popup = NULL; - - //elm_genlist_item_update(item_interval); - //elm_genlist_item_expanded_set(item_interval, EINA_FALSE); -} - -static void -gl_radio_sel_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - Elm_Object_Item *it = (Elm_Object_Item*)event_info; - elm_genlist_item_selected_set(it, EINA_FALSE); - cp_radio_change(data, obj, event_info); -} - -static Evas_Object* -gl_radio_content_get_cb(void *data, Evas_Object *obj, const char *part) -{ - int index = (int) data; - //WALLPAPERUI_DBG("000 000 index = %d",index); - - int interval = 0; -// vconf_get_int("db/wallpaper-service/interval", &interval); - wallpaper_service_get_interval(&interval); - - if (!strcmp(part, "elm.icon.2")) { - Evas_Object *content = elm_layout_add(obj); - Evas_Object *radio; - Evas_Object *radio_main = evas_object_data_get(obj, "radio"); - elm_layout_theme_set(content, "layout", "list/C/type.2", "default"); - radio = elm_radio_add(content); - //elm_radio_group_add(radio, radio_main); - //radio = elm_radio_add(obj); - elm_radio_group_add(radio, radio_main); - WALLPAPERUI_DBG("!!!!!!!!!!!!!radio = %p", radio); - if(0 == index) - { - elm_radio_state_value_set(radio, 1); - evas_object_smart_callback_add(radio, "changed", cp_radio_change, (void *)1); - //elm_radio_group_add(radio, radio_group); - elm_radio_value_set(radio, interval); - cp_item_radio = radio; - } - else if (index == 1) - { - elm_radio_state_value_set(radio, 3); - evas_object_smart_callback_add(radio, "changed", cp_radio_change, (void *)3); - elm_radio_value_set(radio, interval); - cp_item_radio = radio; - } - else if (index == 2) - { - elm_radio_state_value_set(radio, 6); - evas_object_smart_callback_add(radio, "changed", cp_radio_change, (void *)6); - elm_radio_value_set(radio, interval); - cp_item_radio = radio; - } - else - { - elm_radio_state_value_set(radio, 12); - evas_object_smart_callback_add(radio, "changed", cp_radio_change, (void *)12); - elm_radio_value_set(radio, interval); - cp_item_radio = radio; - } - - //elm_radio_value_set(item, interval); - evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND,EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_propagate_events_set(radio, EINA_TRUE); - elm_layout_content_set(content, "elm.swallow.content", radio); - return content; - //return radio; - } - return NULL; -} - -static char* -gl_radio_text_get_cb(void *data, Evas_Object *obj, const char *part) -{ - if(!strcmp(part, "elm.text.main.left")) - { - int index = (int) data; - - if(index == 0) { - return strdup(APP_STRING("IDS_ST_OPT_EVERY_1_HOUR")); - } else { - char temp_str[128] = {0,}; - switch(index) { - case 1 : - snprintf(temp_str, sizeof(temp_str)-1, APP_STRING("IDS_ST_OPT_EVERY_PD_HOURS_ABB2"), 3); - break; - case 2 : - snprintf(temp_str, sizeof(temp_str)-1, APP_STRING("IDS_ST_OPT_EVERY_PD_HOURS_ABB2"), 6); - break; - case 3 : - default : - snprintf(temp_str, sizeof(temp_str)-1, APP_STRING("IDS_ST_OPT_EVERY_PD_HOURS_ABB2"), 12); - break; - } - return strdup(temp_str); - } - } - else return NULL; -} - -static void _create_interval_popup(void *data) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - static Elm_Genlist_Item_Class *cp_itcRadio = NULL; - - static Elm_Genlist_Item_Class itc; - Evas_Object *popup; - Evas_Object *genlist; - Evas_Object *radio; - Elm_Object_Item *item = NULL; - - /* popup */ - popup = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_OPT_TRANSITION_INTERVAL_ABB")); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _create_interval_popup); - - interval_popup = popup; - - //Evas_Object *layout = elm_layout_add(popup); - //elm_layout_file_set(layout, SETTING_EDJ_PATH"/setting-custompopup.edj", "list_popup"); - //evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - //elm_object_content_set(popup, layout); - - /* genlist */ - genlist = elm_genlist_add(popup); - evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); - elm_scroller_content_min_limit(genlist, EINA_FALSE, EINA_TRUE); - cp_g_genlist = genlist; - - /* radio */ - radio = elm_radio_add(genlist); - evas_object_propagate_events_set(radio, EINA_TRUE); - elm_object_style_set(radio, "list"); - evas_object_data_set(genlist, "radio", radio); - - int interval = 0; - wallpaper_service_get_interval(&interval); - elm_radio_state_value_set(radio, interval); - elm_radio_value_set(radio, interval); - WALLPAPERUI_DBG("interval = %d",interval); - - - itc.item_style = "1line"; - itc.func.text_get = gl_radio_text_get_cb; - itc.func.content_get = gl_radio_content_get_cb; - itc.func.state_get = NULL; - itc.func.del = NULL; - int i = 0; - - for (i = 0; i < 4; i++) { - if(0 == i) - { - item = elm_genlist_item_append(genlist, &itc, (void *) i, NULL, ELM_GENLIST_ITEM_NONE, gl_radio_sel_cb, (void *) 1); - } - else if(1 == i) - { - item = elm_genlist_item_append(genlist, &itc, (void *) i, NULL, ELM_GENLIST_ITEM_NONE, gl_radio_sel_cb, (void *) 3); - } - else if(2 == i) - { - item = elm_genlist_item_append(genlist, &itc, (void *) i, NULL, ELM_GENLIST_ITEM_NONE, gl_radio_sel_cb, (void *) 6); - } - else - { - item = elm_genlist_item_append(genlist, &itc, (void *) i, NULL, ELM_GENLIST_ITEM_NONE, gl_radio_sel_cb, (void *) 12); - } - if(item == NULL) - { - WALLPAPERUI_ERR("elm_genlist_item_append failed(%d)", i); - } - } - evas_object_show(genlist); - - elm_object_content_set(popup, genlist); - evas_object_show(popup); - #if 0 - Evas_Object *menu_glist = elm_genlist_add(layout); - evas_object_show(menu_glist); - elm_object_part_content_set(layout, "elm.swallow.content", menu_glist); - - cp_itcRadio = elm_genlist_item_class_new(); - if(cp_itcRadio) { - cp_itcRadio->item_style = CPWALLPAPER_GENLIST_STYLE_RADIO; - cp_itcRadio->func.text_get = _cp_gl_text_get; - cp_itcRadio->func.content_get = _cp_gl_content_get; - cp_itcRadio->func.state_get = _cp_gl_state_get; - cp_itcRadio->func.del = NULL; - } - //evas_object_smart_callback_add(popup, "block,clicked", _block_clicked_cb, NULL); - - cp_radio_group = elm_radio_add(menu_glist); - elm_radio_state_value_set(cp_radio_group, 720); - elm_radio_value_set(cp_radio_group, 720); - - cp_item_radio1h = elm_genlist_item_append(menu_glist, - cp_itcRadio, - (const void *)IDS_CPWALLPAPER_INTERVAL_60min, - NULL, - ELM_GENLIST_ITEM_NONE, - _cp_gl_sel, - (const void *)1); - cp_item_radio3h = elm_genlist_item_append(menu_glist, - cp_itcRadio, - (const void *)IDS_CPWALLPAPER_INTERVAL_180min, - NULL, - ELM_GENLIST_ITEM_NONE, - _cp_gl_sel, - (const void *)3); - cp_item_radio6h = elm_genlist_item_append(menu_glist, - cp_itcRadio, - (const void *)IDS_CPWALLPAPER_INTERVAL_360min, - NULL, - ELM_GENLIST_ITEM_NONE, - _cp_gl_sel, - (const void *)6); - cp_item_radio12h = elm_genlist_item_append(menu_glist, - cp_itcRadio, - (const void *)IDS_CPWALLPAPER_INTERVAL_720min, - NULL, - ELM_GENLIST_ITEM_NONE, - _cp_gl_sel, - (const void *)12); - - evas_object_show(popup); - #endif - WALLPAPERUI_TRACE_END; -} - -static void _interval_click_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd; - ugd = (cp_wallpaper_ug_data *)data; - - //delete more_popup - if(ugd->more_popup) { - evas_object_del(ugd->more_popup); - ugd->more_popup = NULL; - } - - //popup - _create_interval_popup(data); - - WALLPAPERUI_TRACE_END; -} - -static void _wifi_cancel_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - if(!popup) { - return; - } - - Evas_Object *check = NULL; - check = (Evas_Object*)evas_object_data_get(popup, "check"); - Eina_Bool check_state = elm_check_state_get(check); - WALLPAPERUI_DBG("_wifi_check_response_cb. %d",check_state); - if(check_state == EINA_TRUE) - { - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_WIFIPOPUP_DONOTSHOWAGAIN, 1); - } - - evas_object_del(popup); - popup = NULL; -} - -static void _wifi_disable_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = (Evas_Object *)data; - if(!popup) { - return; - } - - Evas_Object *check = NULL; - check = (Evas_Object*)evas_object_data_get(popup, "check"); - Eina_Bool check_state = elm_check_state_get(check); - WALLPAPERUI_DBG("_wifi_check_response_cb. %d", check_state); - if(check_state == EINA_TRUE) - { - vconf_set_bool(VCONFKEY_LOCKSCREEN_CP_WIFIPOPUP_DONOTSHOWAGAIN, 1); - } - - int value = 0; - wallpaper_service_set_wifi_only_setting(value); - WALLPAPERUI_DBG("value = %d",value); - - evas_object_del(popup); - popup = NULL; - - WALLPAPERUI_TRACE_END; -} - -static void create_wifi_check_popup(void) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup; - Evas_Object *layout; - Evas_Object *btn; - Evas_Object *label; - Evas_Object *check; - //Evas_Object *win = data; - - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - popup = elm_popup_add(ug_data->navi_bar); - elm_popup_align_set(popup, ELM_NOTIFY_ALIGN_FILL, 1.0); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - elm_object_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_OPT_DISABLE_WI_FI_ONLY_ABB")); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - /* layout */ - layout = elm_layout_add(popup); - elm_layout_file_set(layout, EDJDIR"/popup-wallpaper.edj", "popup_wifi_check_layout"); - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_translatable_part_text_set(layout, "elm.text", APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - - - /* Cancle button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_translatable_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_CANCEL")); - //ea_theme_object_color_replace(btn, "W011", "W0111"); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", _wifi_cancel_response_cb, popup); - - /*Disable button*/ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_DISABLE")); - //ea_theme_object_color_replace(btn, "W011", "W0111"); - elm_object_part_content_set(popup, "button2", btn); - evas_object_smart_callback_add(btn, "clicked", _wifi_disable_response_cb, popup); - - /* check */ - check = elm_check_add(popup); - elm_object_style_set(check, "popup"); - //elm_object_text_set(check, "Do not show again"); - elm_object_translatable_text_set(check,APP_STRING("IDS_ST_BODY_DO_NOT_SHOW_AGAIN")); - evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_part_content_set(layout, "elm.swallow.end", check); - - evas_object_data_set(popup, "check", check); - - /* label */ - label = elm_label_add(layout); - elm_object_style_set(label, "popup/default"); - elm_label_line_wrap_set(label, ELM_WRAP_MIXED); - elm_object_text_set(label, APP_STRING("IDS_ST_POP_CONNECTING_VIA_MOBILE_NETWORK_MAY_INCUR_ADDITIONAL_CHARGES_DEPENDING_ON_YOUR_PAYMENT_PLAN")); - evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0); - evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_show(label); - elm_object_part_content_set(layout, "elm.swallow.content", label); - - elm_object_content_set(popup, layout); - - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, create_wifi_check_popup); -} - -static void _Disable_wifi_click_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd; - ugd = (cp_wallpaper_ug_data *)data; - int value1 = 0; - int value2 = 0; - - if(ugd->more_popup) { - evas_object_del(ugd->more_popup); - ugd->more_popup = NULL; - } - - vconf_get_bool(VCONFKEY_LOCKSCREEN_CP_WIFIPOPUP_DONOTSHOWAGAIN, &value1); - if(value1 == 0) { - create_wifi_check_popup(); - } - else - { - wallpaper_service_set_wifi_only_setting(value2); - } - WALLPAPERUI_TRACE_END; -} - -static void _Enable_wifi_click_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - cp_wallpaper_ug_data *ugd; - ugd = (cp_wallpaper_ug_data *)data; - int value = 1; - - if(ugd->more_popup) { - evas_object_del(ugd->more_popup); - ugd->more_popup = NULL; - } - wallpaper_service_set_wifi_only_setting(value); - - WALLPAPERUI_TRACE_END; -} - -static void popup_enable_cancel_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = data; - if(!popup) { - return; - } - - evas_object_del(popup); - popup = NULL; -} - -static void popup_enable_enable_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = data; - if(!popup) { - return; - } - int value = 1; - wallpaper_service_set_verfication(value); - - evas_object_del(popup); - popup = NULL; -} - -static void _enhanced_popup_create(void); - -static void _Enable_service_click_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - Evas_Object *popup; - Evas_Object *btn; - - if(ug_data->more_popup) { - evas_object_del(ug_data->more_popup); - ug_data->more_popup = NULL; - } - - /* popup */ - popup = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - elm_object_translatable_text_set(popup, APP_STRING("MIDS_LSM_MSG_TO_PROVIDE_YOU_WITH_A_MORE_ENHANCED_EXPERIENCE_MSG")); - elm_object_translatable_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_OPT_ENABLE_ENHANCED_SERVICE_ABB")); - - /* cancle button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_translatable_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_CANCEL")); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", popup_enable_cancel_clicked_cb, popup); - - /* enable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_ENABLE")); - elm_object_part_content_set(popup, "button2", btn); - evas_object_smart_callback_add(btn, "clicked", popup_enable_enable_clicked_cb, popup); - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _enhanced_popup_create); - WALLPAPERUI_TRACE_END; -} - -static void _enhanced_popup_create(void) -{ - _Enable_service_click_cb(NULL, NULL, NULL); -} - -static void popup_disable_cancel_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = data; - if(!popup) { - return; - } - - evas_object_del(popup); - popup = NULL; -} - -static void popup_disable_enable_clicked_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *popup = data; - if(!popup) { - return; - } - int value = 0; - wallpaper_service_set_verfication(value); - - evas_object_del(popup); - popup = NULL; -} - -static void _disable_popup_create(void); - -static void _Disbale_service_click_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(ug_data == NULL) { - WALLPAPERUI_ERR("ug_data is NULL"); - return; - } - - if(ug_data->more_popup) { - evas_object_del(ug_data->more_popup); - ug_data->more_popup = NULL; - } - - Evas_Object *popup; - Evas_Object *btn; - - /* popup */ - popup = elm_popup_add(ug_data->navi_bar); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK, ea_popup_back_cb, NULL); - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_object_translatable_text_set(popup,APP_STRING("MIDS_LSM_POP_IF_YOU_DISABLE_ENHANCED_SERVICE_MSG")); - elm_object_translatable_part_text_set(popup, "title,text", APP_STRING("IDS_LCKSCN_OPT_DISABLE_ENHANCED_SERVICE_ABB")); - - - /* cancle button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_translatable_text_set(btn, APP_STRING("IDS_LCKSCN_BUTTON_CANCEL")); - elm_object_part_content_set(popup, "button1", btn); - evas_object_smart_callback_add(btn, "clicked", popup_disable_cancel_clicked_cb, popup); - - /* disable button */ - btn = elm_button_add(popup); - elm_object_style_set(btn, "popup"); - elm_object_text_set(btn, APP_STRING("IDS_ST_BUTTON_DISABLE")); - elm_object_part_content_set(popup, "button2", btn); - evas_object_smart_callback_add(btn, "clicked", popup_disable_enable_clicked_cb, popup); - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, _disable_popup_create); - WALLPAPERUI_TRACE_END; -} - -static void _disable_popup_create(void) -{ - if(ug_data) { - _Disbale_service_click_cb(NULL, NULL, NULL); - } else { - WALLPAPERUI_ERR("ug_data is NULL"); - } -} - -static void _lockscreen_more_menu_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - Evas_Object *more_ctxpopup = NULL; - cp_wallpaper_ug_data *ugd; - - ugd = (cp_wallpaper_ug_data *)data; - if(ugd == NULL) - { - WALLPAPERUI_DBG("ugd is null"); - return; - } - more_ctxpopup = elm_ctxpopup_add(ugd->navi_bar); - ugd->more_popup = more_ctxpopup; - ea_object_event_callback_add(more_ctxpopup, - EA_CALLBACK_BACK, _lockscreen_more_popup_back_cb, ugd); - ea_object_event_callback_add(more_ctxpopup, - EA_CALLBACK_MORE, _lockscreen_more_popup_more_cb, ugd); - elm_object_style_set(more_ctxpopup, "more/default"); - elm_ctxpopup_auto_hide_disabled_set(more_ctxpopup, EINA_TRUE); - - int value = 0; - wallpaper_service_get_verfication(&value);//0 : disable 1:enable - int value_wifi = 0; - wallpaper_service_get_wifi_only_setting(&value_wifi); - WALLPAPERUI_DBG("value = %d,value_wifi = %d",value,value_wifi); - - int i = 1; - for(i = 1; i <= 4; i++) - { - if (1==i) - { - elm_ctxpopup_item_append(more_ctxpopup, APP_STRING("IDS_LCKSCN_OPT_TRANSITION_INTERVAL_ABB"), NULL, _interval_click_cb, ugd); - - } - else if(2==i) - { - if(1 == value_wifi) - { - elm_ctxpopup_item_append(more_ctxpopup, APP_STRING("IDS_LCKSCN_OPT_DISABLE_WI_FI_ONLY_ABB"), NULL, _Disable_wifi_click_cb, ugd); - } - else - { - elm_ctxpopup_item_append(more_ctxpopup, APP_STRING("IDS_LCKSCN_OPT_ENABLE_WI_FI_ONLY_ABB"), NULL, _Enable_wifi_click_cb, ugd); - } - } - else if(3==i) - { - if(0 == value)//disbale - { - elm_ctxpopup_item_append(more_ctxpopup, APP_STRING("IDS_LCKSCN_OPT_ENABLE_ENHANCED_SERVICE_ABB"), NULL, _Enable_service_click_cb, ugd); - break; - } - else //enable - { - } - } - else - { - if(1 == value) - { - elm_ctxpopup_item_append(more_ctxpopup, APP_STRING("IDS_LCKSCN_OPT_DISABLE_ENHANCED_SERVICE_ABB"), NULL, _Disbale_service_click_cb, ugd); - } - } - } - - evas_object_smart_callback_add(more_ctxpopup, "dismissed", - _lockscreen_more_popup_dismiss_cb, ugd); - evas_object_smart_callback_add(elm_object_top_widget_get(more_ctxpopup), - "rotation,changed", - _lockscreen_more_popup_rotate_cb, ugd); - evas_object_event_callback_add(more_ctxpopup, EVAS_CALLBACK_DEL, - _lockscreen_more_popup_delete_cb, ugd->navi_bar); - - elm_ctxpopup_direction_priority_set(more_ctxpopup, ELM_CTXPOPUP_DIRECTION_UP, - ELM_CTXPOPUP_DIRECTION_DOWN, - ELM_CTXPOPUP_DIRECTION_UNKNOWN, - ELM_CTXPOPUP_DIRECTION_UNKNOWN); - - _wallpaper_move_ctxpopup(more_ctxpopup); - evas_object_show(more_ctxpopup); - WALLPAPERUI_TRACE_END; -} - -static void _progress_response_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - -/* int error = wallpaper_service_deactivate(); - if(error != 0) { - WALLPAPERUI_DBG("wallpaper_service_deactivate fail."); - }*/ - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - if(ug_data->popup_progress != NULL) { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } - //elm_naviframe_item_pop_to(ug_data->navi_main_item); - elm_naviframe_item_pop(ug_data->navi_bar); -} - -static void _progress_delete_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - if(ug_data->popup_progress != NULL) { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } -} -#if 0 -static void _progress_bar_delete_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - cp_wallpaper_ug_data * ug_data = (cp_wallpaper_ug_data *)data; - if(ug_data->popup_progress != NULL) { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } -} -#endif -void create_loading_popup() -{ - WALLPAPERUI_TRACE_BEGIN; - - if(ug_data->popup_progress != NULL ) - { - evas_object_del(ug_data->popup_progress); - ug_data->popup_progress = NULL; - } - - Evas_Object *popup = elm_popup_add(ug_data->navi_bar); - ug_data->popup_progress = popup; - // elm_object_style_set(popup, "no_effect"); - evas_object_event_callback_add(ug_data->popup_progress, EVAS_CALLBACK_DEL, _progress_delete_cb, ug_data); - ea_object_event_callback_add(popup, EA_CALLBACK_BACK,_progress_response_cb, ug_data); - - evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - Evas_Object *layout = elm_layout_add(popup); - elm_layout_file_set(layout, EDJDIR"/popup-wallpaper.edj", "processing_view"); - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - // [UI] progress icon - Evas_Object *progressbar = elm_progressbar_add(popup); - elm_object_style_set(progressbar, "process_medium"); /* "toolbar_process" or "pending_list" or "list_prosess" */ - evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, 0.5); - evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_progressbar_pulse(progressbar, EINA_TRUE); - elm_object_part_content_set(layout, "processing", progressbar); - - // [UI] text - elm_object_part_text_set(layout, "elm.text", APP_STRING("IDS_ST_POP_LOADING_ING")); - - elm_object_content_set(popup, layout); - - elm_object_style_set(popup, "no_effect"); -#if 0 - Evas_Object *box = elm_box_add(popup); - elm_box_horizontal_set(box, EINA_TRUE); - evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL); - elm_box_align_set(box, 0.5, 0.5); - elm_box_padding_set(box, 16, 0); - - Evas_Object *progressbar = elm_progressbar_add(box); - //evas_object_event_callback_add(progressbar, EVAS_CALLBACK_DEL, _progress_bar_delete_cb, ug_data); - elm_object_style_set(progressbar, "process_large"); - elm_progressbar_pulse(progressbar, EINA_TRUE); - evas_object_show(progressbar); - elm_box_pack_end(box, progressbar); - - Evas_Object *label = elm_label_add(popup); - elm_object_text_set( label, APP_STRING("IDS_ST_POP_LOADING_ING")); - evas_object_show(label); - elm_box_pack_end(box, label); - -// evas_object_show(box); -// elm_object_content_set(popup, box); - - Evas_Object *table = elm_table_add(popup); - evas_object_show(table); - elm_table_homogeneous_set(table, EINA_FALSE); - - Evas_Object *rect_up; - rect_up = evas_object_rectangle_add(evas_object_evas_get(popup)); - evas_object_size_hint_min_set(rect_up, ELM_SCALE_SIZE(100), ELM_SCALE_SIZE(20)); - - Evas_Object *rect_down; - rect_down = evas_object_rectangle_add(evas_object_evas_get(popup)); - evas_object_size_hint_min_set(rect_down, ELM_SCALE_SIZE(100), ELM_SCALE_SIZE(20)); - - // box - elm_table_pack(table, rect_up, 0, 0, 2, 1);// rect as a padding - elm_table_pack(table, box, 0, 1, 2, 1); - elm_table_pack(table, rect_down, 0, 2, 2, 1);// rect as a padding - evas_object_show(box); - - elm_object_content_set(popup, table); -#endif - - evas_object_show(popup); - - display_popup = popup; - evas_object_event_callback_add(popup, EVAS_CALLBACK_DEL, _del_cb, NULL); - evas_object_data_set(popup, POPUP_CREATE_FUNC_HANDLE, create_loading_popup); -} -#if 0 -static void cp_wallpaper_back_key_cb(void *data, Evas_Object *obj, void *event_info) -{ - WALLPAPERUI_TRACE_BEGIN; - - ret_if(!data); - - if(cp_wallpaper_list!=NULL) - { - cp_info_list_free(cp_wallpaper_list); - cp_wallpaper_list = NULL; - } - - //elm_naviframe_item_pop(ug_data->navi_bar); -} -#endif -static Eina_Bool _cp_wallpaper_pop_cb(void *data, Elm_Object_Item *it) -{ - WALLPAPERUI_TRACE_BEGIN; - - if(data){ - cp_wallpaper_ug_data *ug_data = (cp_wallpaper_ug_data *)data; - - /*if(cp_wallpaper_list!=NULL) - { - cp_info_list_free(cp_wallpaper_list); - cp_wallpaper_list = NULL; - }*/ - if (ug_data) { - ea_object_event_callback_del(ug_data->navi_bar, EA_CALLBACK_MORE, _lockscreen_more_menu_cb); - } - } - return EINA_TRUE; -} - - -void cp_wallpaper_main_create_view() -{ - WALLPAPERUI_TRACE_BEGIN; - - ug_data->category_received = 0; - ug_data->navi_setting_item = NULL; - - WALLPAPERUI_DBG("wallpaper_service_activate_async start\n"); - int err_code = wallpaper_service_activate_async(__wallpaper_service_activate_cb, ug_data); - WALLPAPERUI_DBG("wallpaper_service_activate_async end: err_code = %d\n", err_code); - - if (WALLPAPER_SERVICE_ERROR_NONE != err_code) { - //ERROR POPUP - //elm_object_item_disabled_set(cancel_btn, EINA_TRUE); - //elm_object_item_disabled_set(done_btn, EINA_TRUE); - WALLPAPERUI_ERR("wallpaper_service_activate failed\n"); - _create_no_network_popup(); -// _create_network_error_popup(ug_data); - return; - } - - if(ug_data->category_received == 0) { - create_loading_popup(); - } - - main_layout = cp_wallpaper_util_create_layout(ug_data->navi_bar, EDJDIR"/popup-wallpaper.edj", "cp.wallpaper.main"); - //cp_gengrid = cp_gengrid_add(layout); - //elm_object_part_content_set(layout, "cp", cp_gengrid); - ug_data->layout_main = main_layout; - - //ea_object_event_callback_add(ug_data->navi_bar, EA_CALLBACK_BACK, cp_wallpaper_back_key_cb, (void*)ug_data); - cp_navi_item = elm_naviframe_item_push(ug_data->navi_bar, navi_title, NULL, NULL, main_layout, NULL); - elm_naviframe_item_pop_cb_set(cp_navi_item, _cp_wallpaper_pop_cb, (void*)ug_data); - elm_object_item_domain_text_translatable_set(cp_navi_item, PKGNAME, EINA_TRUE); - //elm_naviframe_item_pop_cb_set(cp_navi_item, _cpwallpaper_pop_cb, ug_data); - //cp_wallpaper_create_genlist(layout,ug_data); - ug_data->navi_main_item = cp_navi_item; - - Evas_Object *more_btn = NULL; - more_btn = elm_button_add(ug_data->navi_bar); - elm_object_style_set(more_btn, "naviframe/more/default"); - ea_object_event_callback_add(ug_data->navi_bar, EA_CALLBACK_MORE, _lockscreen_more_menu_cb, ug_data); - elm_object_item_part_content_set(cp_navi_item, "toolbar_more_btn", more_btn); - - /* Title Cancel Button */ - Evas_Object *cancel_btn = elm_button_add(ug_data->navi_bar); - elm_object_style_set(cancel_btn, "naviframe/title_text_left"); - elm_object_text_set(cancel_btn, APP_STRING("IDS_TPLATFORM_ACBUTTON_CANCEL_ABB")); - evas_object_smart_callback_add(cancel_btn, "clicked", cp_cancel_button_cb, NULL); - elm_object_item_part_content_set(cp_navi_item, "title_left_text_btn", cancel_btn); - - /* Title Done Button */ - done_btn = elm_button_add(ug_data->navi_bar); - elm_object_style_set(done_btn, "naviframe/title_text_right"); - elm_object_text_set(done_btn, APP_STRING("IDS_TPLATFORM_ACBUTTON_DONE_ABB")); - evas_object_smart_callback_add(done_btn, "clicked", cp_done_button_cb, NULL); - elm_object_item_part_content_set(cp_navi_item, "title_right_text_btn", done_btn); - - WALLPAPERUI_DBG("default_clicked_cb end"); -} - -Evas_Object *cp_wallpaper_util_create_layout(Evas_Object * parent, const char *file, const char *group) -{ - WALLPAPERUI_TRACE_BEGIN; - Evas_Object *layout = NULL; - - if (parent == NULL) { - WALLPAPERUI_DBG("Parent is null."); - return NULL; - } - - layout = elm_layout_add(parent); - if (layout == NULL) { - WALLPAPERUI_DBG("Cannot add layout."); - return NULL; - } - - if ((file != NULL) && (group != NULL)) { - elm_layout_file_set(layout, file, group); - } - - evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - - evas_object_show(layout); - - return layout; -} - -void cp_wallpaper_popup_language_change(void) -{ - void (*func)(void) = NULL; - - if(display_popup) { - func = evas_object_data_get(display_popup, POPUP_CREATE_FUNC_HANDLE); - evas_object_del(display_popup); - display_popup = NULL; - } - - if(func) { - func(); - } -} |