fix async API issue of TAPI
authorHyejin Kim <hyejin0906.kim@samsung.com>
Thu, 4 Oct 2012 04:57:57 +0000 (13:57 +0900)
committerHyejin Kim <hyejin0906.kim@samsung.com>
Thu, 4 Oct 2012 06:37:28 +0000 (15:37 +0900)
patchset2. remove merge conflict

Change-Id: I6afc9566d6f5ef00098fdba865499699980605aa

setting-security/include/setting-security.h
setting-security/src/setting-security-sim-settings.c
setting-security/src/setting-security.c

index ebe6027..e9bf014 100755 (executable)
@@ -87,6 +87,7 @@ struct _SettingSecurityUG {
 
        Evas_Object *ly_main;
        Evas_Object *navi_bar;
+       Evas_Object *sim_popup;
        ui_gadget_h ug_passwd;
 
        Setting_GenGroupItem_Data *data_sim_lk;
@@ -116,6 +117,7 @@ SettingSecurityUG *g_ad;    /* for tapi callback */
 void setting_security_result_password_ug_cb(ui_gadget_h ug,
                                            service_h service, void *priv);
 void setting_security_sim_get_facility_cb(TapiHandle *handle, int result, void *data, void *user_data);
+void setting_security_pin_get_facility_cb(TapiHandle *handle, int result, void *data, void *user_data);
 
 gboolean setting_security_create_password_sg(void *data);
 
index e849907..710749f 100755 (executable)
@@ -199,6 +199,13 @@ static void get_pin_lock_info_cb(TapiHandle *handle, int result, void *data, voi
 
        SettingSecurityUG *ad = (SettingSecurityUG *)user_data;
 
+       /* delete popup */
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+
        int old_state = elm_check_state_get(ad->data_pin_lk->eo_check);
        if (old_state) {
                SETTING_TRACE("Current status of PIN Lock is ON");
@@ -258,6 +265,17 @@ static void get_pin_lock_info_cb(TapiHandle *handle, int result, void *data, voi
                return;
        }
 
+       /* create popup */
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+       ad->sim_popup = setting_create_popup_without_btn(ad, ad->win_get,
+                                                                               NULL, _("Waiting response of SIM ..."), 
+                                                                               NULL,
+                                                                               0, FALSE, FALSE);
+
        if(tel_get_sim_lock_info(ad->handle, TAPI_SIM_LOCK_SC, get_pin_lock_info_cb, ad) != 0)
        {
                SETTING_TRACE_ERROR("failed to call tel_get_sim_lock_info()");
@@ -274,6 +292,13 @@ static void get_sim_lock_info_cb(TapiHandle *handle, int result, void *data, voi
 
        SettingSecurityUG *ad = (SettingSecurityUG *)user_data;
 
+       /* delete popup */
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+
        int old_state = elm_check_state_get(ad->data_sim_lk->eo_check);
        if (old_state) {
                SETTING_TRACE("Current status of SIM Lock is ON");
@@ -309,6 +334,17 @@ void _draw_sim_onoff_status(void *data, Evas_Object *check)
        if(ret == SETTING_RETURN_FAIL)
                return;
 
+       /* create popup */
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+       ad->sim_popup = setting_create_popup_without_btn(ad, ad->win_get,
+                                                                               NULL, _("Waiting response of SIM ..."), 
+                                                                               NULL,
+                                                                               0, FALSE, FALSE);
+
        if(tel_get_sim_lock_info(ad->handle, TAPI_SIM_LOCK_PS, get_sim_lock_info_cb, ad) != 0)
        {
                SETTING_TRACE_ERROR("failed to call tel_get_sim_lock_info()");
index 32e5a5e..c1dbda0 100755 (executable)
@@ -67,7 +67,7 @@ int pwd_handler_sec_pw_pin_lock_on(SettingSecurityUG *data, void* arg)
 {
        SETTING_TRACE_BEGIN;
        SettingSecurityUG *ad = (SettingSecurityUG *)data;
-       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_sim_get_facility_cb, ad) != TAPI_API_SUCCESS)
+       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_pin_get_facility_cb, ad) != TAPI_API_SUCCESS)
        {
                SETTING_TRACE_ERROR("tel_get_sim_facility(TAPI_SIM_LOCK_PS) failed");
        }
@@ -79,7 +79,7 @@ int pwd_handler_sec_pw_pin_lock_off(SettingSecurityUG *data, void* arg)
 {
        SETTING_TRACE_BEGIN;
        SettingSecurityUG *ad = (SettingSecurityUG *)data;
-       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_sim_get_facility_cb, ad) != TAPI_API_SUCCESS)
+       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_pin_get_facility_cb, ad) != TAPI_API_SUCCESS)
        {
                SETTING_TRACE_ERROR("tel_get_sim_facility(TAPI_SIM_LOCK_PS) failed");
        }
@@ -103,7 +103,7 @@ int pwd_handler_sec_pw_change_pin1(SettingSecurityUG *data, void* arg)
 {
        SETTING_TRACE_BEGIN;
        SettingSecurityUG *ad = (SettingSecurityUG *)data;
-       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_sim_get_facility_cb, ad) != TAPI_API_SUCCESS)
+       if (tel_get_sim_facility(ad->handle, TAPI_SIM_LOCK_SC, setting_security_pin_get_facility_cb, ad) != TAPI_API_SUCCESS)
        {
                SETTING_TRACE_ERROR("tel_get_sim_facility(TAPI_SIM_LOCK_PS) failed");
        }
@@ -180,6 +180,8 @@ static void *setting_security_ug_on_create(ui_gadget_h ug,
        setting_retvm_if(securityUG->win_main_layout == NULL, NULL,
                         "[Setting >> Security] cannot get main window ");
 
+       setting_set_i18n(SETTING_PACKAGE, SETTING_LOCALEDIR);
+
        /* register view node table */
        setting_view_node_table_intialize();
        setting_view_node_table_register(&setting_view_security_main, NULL);
@@ -365,6 +367,13 @@ void setting_security_sim_get_facility_cb(TapiHandle *handle, int result, void *
        TelSimFacilityInfo_t *fi = data;
        SettingSecurityUG *ad = user_data;
 
+
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+
        SETTING_TRACE("sec_rt[%d]", sec_rt);
        SETTING_TRACE("fi->type[%d]", fi->type);
        SETTING_TRACE("fi->f_status[%d]", fi->f_status);
@@ -376,6 +385,58 @@ void setting_security_sim_get_facility_cb(TapiHandle *handle, int result, void *
                    case TAPI_SIM_LOCK_PS://sim status
                        ad->sim_status = fi->f_status;
                        break;
+                   default:
+                       break;
+               }
+       }
+       else
+       {
+               //if failed, do nothing..
+       }
+
+       /* Update SIM Settings view if created. */
+       if(setting_view_security_sim_settings.is_create == 1)
+       {
+               SETTING_TRACE_DEBUG("SIM settings view is already created. [%d]", setting_view_security_sim_settings.is_create);
+               setting_view_update(&setting_view_security_sim_settings, ad);
+       }
+       else
+       {
+               SETTING_TRACE_DEBUG("Change view");
+               setting_view_change(&setting_view_security_main, &setting_view_security_sim_settings, ad);
+       }
+
+       SETTING_TRACE_END;
+}
+
+void setting_security_pin_get_facility_cb(TapiHandle *handle, int result, void *data, void *user_data)
+{
+       SETTING_TRACE_BEGIN;
+
+       ret_if(!user_data);
+       SETTING_TRACE_DEBUG("user_data is not NULL");
+
+       ret_if(!data);
+       SETTING_TRACE_DEBUG("data is not NULL");
+
+       TelSimPinOperationResult_t sec_rt = result;
+       TelSimFacilityInfo_t *fi = data;
+       SettingSecurityUG *ad = user_data;
+
+       if(ad->sim_popup)
+       {
+               evas_object_del(ad->sim_popup);
+               ad->sim_popup = NULL;
+       }
+
+       SETTING_TRACE("sec_rt[%d]", sec_rt);
+       SETTING_TRACE("fi->type[%d]", fi->type);
+       SETTING_TRACE("fi->f_status[%d]", fi->f_status);
+       if (sec_rt == TAPI_SIM_PIN_OPERATION_SUCCESS)
+       {
+               SETTING_TRACE_DEBUG("PIN_OPERATION_SUCCESS");
+               switch (fi->type)
+               {
                    case TAPI_SIM_LOCK_SC://pin1 status
                        ad->pin1_status = fi->f_status;
                        break;
@@ -397,6 +458,12 @@ void setting_security_sim_get_facility_cb(TapiHandle *handle, int result, void *
                SETTING_TRACE_DEBUG("SIM settings view is already created. [%d]", setting_view_security_sim_settings.is_create);
                setting_view_update(&setting_view_security_sim_settings, ad);
        }
+       else
+       {
+               SETTING_TRACE_DEBUG("Change view");
+               setting_view_change(&setting_view_security_main, &setting_view_security_sim_settings, ad);
+       }
+
        SETTING_TRACE_END;
 }