X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=setting-password%2Fsrc%2Fsetting-password.c;h=071548b09b57db1d2d22e024852b8742671bc01b;hb=b944a6cf283c3354094a85fd0f6fe5d33ab7db20;hp=cdbfb2ae25e986b6443ba210f627e7c4ab1fd47e;hpb=190c8c352286e7c7f351b0610c338845eeccbee2;p=apps%2Fcore%2Fpreloaded%2Fsettings.git diff --git a/setting-password/src/setting-password.c b/setting-password/src/setting-password.c index cdbfb2a..071548b 100755 --- a/setting-password/src/setting-password.c +++ b/setting-password/src/setting-password.c @@ -19,7 +19,7 @@ * */ #include -#include +//#include #ifndef UG_MODULE_API #define UG_MODULE_API __attribute__ ((visibility("default"))) @@ -166,8 +166,9 @@ static void *setting_password_ug_on_create(ui_gadget_h ug, setting_set_i18n(SETTING_PACKAGE, SETTING_LOCALEDIR); FREE(pa_path); + setting_create_Gendial_itc("dialogue/title", &(passwordUG->itc_title)); setting_create_Gendial_itc("dialogue/1icon",&(passwordUG->itc_variable_height)); - passwordUG->itc_seperator.item_style = "dialogue/separator/21/with_line"; + passwordUG->itc_seperator.item_style = "dialogue/separator"; passwordUG->itc_seperator.func.text_get = NULL; passwordUG->itc_seperator.func.content_get = NULL; passwordUG->itc_seperator.func.state_get = NULL; @@ -239,6 +240,11 @@ static void setting_password_ug_on_event(ui_gadget_h ug, enum ug_event event, service_h service, void *priv) { + if (!priv) + return; + + SettingPasswordUG *ad = (SettingPasswordUG*)priv; + switch (event) { case UG_EVENT_LOW_MEMORY: break; @@ -247,12 +253,22 @@ static void setting_password_ug_on_event(ui_gadget_h ug, case UG_EVENT_LANG_CHANGE: break; case UG_EVENT_ROTATE_PORTRAIT: - break; case UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN: - break; case UG_EVENT_ROTATE_LANDSCAPE: - break; case UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN: + /* Focus entry */ + SETTING_TRACE_DEBUG("get rotation event"); + if(ad->ed_pw1) + { + if (ad->ed_pw1->isFocusFlag || (ad->ed_pw1->eo_check != NULL)) + { + SETTING_TRACE_DEBUG("set focus"); + /* no matter how many edifileds, it only need focus on 1st editfiled */ + elm_object_focus_set(ad->ed_pw1->eo_check, EINA_TRUE); + elm_entry_cursor_end_set(ad->ed_pw1->eo_check); + } + } + break; case UG_EVENT_REGION_CHANGE: break; @@ -300,11 +316,14 @@ UG_MODULE_API int UG_MODULE_INIT(struct ug_module_ops *ops) ops->priv = passwordUG; ops->opt = UG_OPT_INDICATOR_ENABLE; + memset(passwordUG, 0x00, sizeof(SettingPasswordUG)); + return 0; } UG_MODULE_API void UG_MODULE_EXIT(struct ug_module_ops *ops) { + SETTING_TRACE_BEGIN; struct SettingPasswordUG *passwordUG; setting_retm_if(!ops, "ops == NULL"); @@ -313,6 +332,59 @@ UG_MODULE_API void UG_MODULE_EXIT(struct ug_module_ops *ops) FREE(passwordUG); } +void setting_get_sim_lock_info_cb(TapiHandle *handle, int result, void *data, void *user_data) +{ + SETTING_TRACE_BEGIN; + ret_if(data == NULL || user_data == NULL); + + TelSimPinOperationResult_t sec_rt = result; + TelSimLockInfo_t *lock = data; + + SettingPasswordUG *ad = (SettingPasswordUG *)user_data; + + SETTING_TRACE_DEBUG("sec_ret[%d], lock_type[%d], lock_status[%d], retry_count[%d]", sec_rt, lock->lock_type, lock->lock_status, lock->retry_count); + + char temp[256] ={0,}; + if(lock->retry_count > 1) + snprintf(temp, 256, _(ATTEMPTS_DESC), lock->retry_count); + else if(lock->retry_count > 0) + snprintf(temp, 256, _(ATTEMPT_DESC), lock->retry_count); + + if(ad->err_desc) + { + elm_object_item_del(ad->err_desc); + ad->err_desc = NULL; + } + + ad->err_desc = elm_genlist_item_append(ad->scroller, &(ad->itc_err_desc), temp, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); +} + +void setting_get_pin_lock_info_cb(TapiHandle *handle, int result, void *data, void *user_data) +{ + SETTING_TRACE_BEGIN; + + TelSimPinOperationResult_t sec_rt = result; + TelSimLockInfo_t *lock = data; + + SettingPasswordUG *ad = (SettingPasswordUG *)user_data; + + SETTING_TRACE_DEBUG("sec_ret[%d], lock_type[%d], lock_status[%d], retry_count[%d]", sec_rt, lock->lock_type, lock->lock_status, lock->retry_count); + + char temp[256] ={0,}; + if(lock->retry_count > 1) + snprintf(temp, 256, _(ATTEMPTS_DESC), lock->retry_count); + else if(lock->retry_count > 0) + snprintf(temp, 256, _(ATTEMPT_DESC), lock->retry_count); + + if(ad->err_desc) + { + elm_object_item_del(ad->err_desc); + ad->err_desc = NULL; + } + + ad->err_desc = elm_genlist_item_append(ad->scroller, &(ad->itc_err_desc), temp, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); +} + void setting_sim_change_pins_cb(TapiHandle *handle, int result, void *data, void *user_data) { SETTING_TRACE_BEGIN; @@ -367,6 +439,7 @@ void setting_sim_verify_puks_cb(TapiHandle *handle, int result, void *data, void if (TAPI_SIM_PTYPE_PUK1 == sim_event_data->type) { + //if (TAPI_SIM_PIN_REQUIRED == sec_rt){ if (TAPI_SIM_PIN_OPERATION_SUCCESS == sec_rt){ SETTING_TRACE_DEBUG("SIM_PIN1_UNBLOCKED"); safeCopyStr(ad->view_type_string, "SETTING_PW_TYPE_PIN1_UNBLOCKED", sizeof("SETTING_PW_TYPE_PIN1_UNBLOCKED")+1); @@ -382,6 +455,7 @@ void setting_sim_verify_puks_cb(TapiHandle *handle, int result, void *data, void else if (TAPI_SIM_PTYPE_PUK2 == sim_event_data->type) { + //if (TAPI_SIM_PUK_REQUIRED == sec_rt) if (TAPI_SIM_PIN_OPERATION_SUCCESS == sec_rt){ SETTING_TRACE_DEBUG("SIM_PIN2_UNBLOCKED"); safeCopyStr(ad->view_type_string, "SETTING_PW_TYPE_PIN2_UNBLOCKED", sizeof("SETTING_PW_TYPE_PIN2_UNBLOCKED")+1); @@ -511,6 +585,7 @@ void setting_sim_facility_disable_cb(TapiHandle *handle, int result, void *data, static void setting_password_ug_display_result_popup(tapi_receive_info *result, SettingPasswordUG *ad) { + SETTING_TRACE_BEGIN; switch (result->stat) { case SIM_OPERATION_OK: case SIM_LOCK_ON_SUCCESS: @@ -543,8 +618,11 @@ static void setting_password_ug_display_result_popup(tapi_receive_info *result, } break; case SIM_LOCK_INCORRECT_PASSWORD: - ad->focus_data = ad->ed_pw1; - setting_password_ug_check_attemps_left(ad); + { + SETTING_TRACE_DEBUG("SIM LOCK INCORRECT PASSWORD"); + ad->focus_data = ad->ed_pw1; + setting_password_ug_display_desc(ad, PW_ERR_DESC, FALSE); + } break; case SIM_INCORRECT_PIN1_CODE: { @@ -700,6 +778,7 @@ static void setting_password_ug_display_result_popup(tapi_receive_info *result, setting_password_ug_create_popup_notitle_nobtn(ad, tmp_str, TRUE); } } + break; case SIM_PIN1_CHANGE_FAIL: case SIM_PIN2_CHANGE_FAIL: setting_password_ug_create_popup_notitle_nobtn(ad,