Setting_GenGroupItem_Data *network_mode_sim_1;
Setting_GenGroupItem_Data *network_mode_sim_2;
Setting_GenGroupItem_Data *data_connection;
+ Setting_GenGroupItem_Data *data_mobile_data;
+ Setting_GenGroupItem_Data *data_roaming;
} s_info = {0,};
static int _view_create(void *cb);
.langchanged = _view_language_changed,
.cleanup = NULL, };
-static void _item_Gendial_mouse_up_cb(void *data,
- Evas_Object *obj, void *event_info);
-static void _click_softkey_back_cb(void *data,
- Evas_Object *obj, void *event_info);
-static void _chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info);
-static void _use_packet_resp_cb(void *data, Evas_Object *obj,
- void *event_info);
-static void __setting_network_data_roaming_resp_cb(void *data, Evas_Object *obj,
- void *event_info);
+static void _item_Gendial_mouse_up_cb(void *data, Evas_Object *obj, void *event_info);
+static void _click_softkey_back_cb(void *data, Evas_Object *obj, void *event_info);
+static void _chk_btn_cb(void *data, Evas_Object *obj, void *event_info);
+static void _use_packet_resp_cb(void *data, Evas_Object *obj, void *event_info);
+static void __setting_network_data_roaming_resp_cb(void *data, Evas_Object *obj, void *event_info);
static void __net_restriction_mode_vconf_change_cb(keynode_t *key, void *data);
static Eina_Bool _view_pop_cb(void *data, Elm_Object_Item *it);
-/* ***************************************************
- *
- *basic func
- *
- ***************************************************/
-#ifdef UI_NETWORK_MODE
-
-#if 0
-static Eina_Bool __set_net_mode_on_delay(void *data)
+static void ___popup_view_resp_cb(void *data, Evas_Object *obj, void *event_info)
{
- /* error check */
SETTING_TRACE_BEGIN;
-
- retvm_if(data == NULL, ECORE_CALLBACK_CANCEL, "Data parameter is NULL");
+ retm_if(data == NULL, "Data parameter is NULL");
SettingNetwork *ad = (SettingNetwork *)data;
- /*Elm_Object_Item *subitem = (Elm_Object_Item *) data; */
- /*Elm_Object_Item *parentItem = elm_genlist_item_parent_get(subitem); */
- /*retvm_if(parentItem == NULL, ECORE_CALLBACK_CANCEL,
- * "parentItem is NULL"); */
-
- /*Setting_GenGroupItem_Data *data_subItem = elm_object_item_data_get(
- * subitem); */ /* parent data */
- /*Setting_GenGroupItem_Data *data_parentItem = elm_object_item_data_get(
- * parentItem);*/ /* parent data */
- /*retvm_if(!data_subItem || !data_parentItem, ECORE_CALLBACK_CANCEL,
- * "!data_subItem || !data_parentItem"); */
-
- retvm_if(ad == NULL, ECORE_CALLBACK_CANCEL, "ad is NULL");
-
- SETTING_TRACE("tel_set_network_mode(data_subItem->chk_status=%d) run",
- data_subItem->chk_status);
- int tapi_ret = tel_set_network_mode(ad->handle,
- data_subItem->chk_status, setting_tapi_set_band_cb, ad);
-
- if (tapi_ret != TAPI_API_SUCCESS) {
- SETTING_TRACE_DEBUG
- ("%s*** [ERR] tel_set_network_mode. tapi_ret=%d ***%s",
- SETTING_FONT_RED, tapi_ret, SETTING_FONT_BLACK);
- setting_create_popup(ad, ad->md.window, NULL,
- Invok_API_Failed_Desc, NULL, POPUP_INTERVAL,
- FALSE, FALSE, 0);
- /*rollback */
- int err = 0;
- int ret = setting_get_int_slp_key(
- ad->data_net_mode->int_slp_setting_binded,
- &(ad->net_mode), &err);
- if (ret == SETTING_RETURN_FAIL)
- SETTING_TRACE_ERROR("failed to get vconf");
- } else {
- SETTING_TRACE("tel_set_network_mode()=TAPI_API_SUCCESS");
- }
-
- ad->timer = NULL;
+ int err = 0; /* error check */
+ int response_type = btn_type(obj);
- return ECORE_CALLBACK_CANCEL;
-}
+ int value = 0;
+ setting_get_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, &value, &err);
+ setting_retm_if(err != 0, "get vconf failed");
+ SETTING_TRACE("value = %d", value);
+ if (POPUP_RESPONSE_OK == response_type) {
+ if (value == 0) {
+ setting_set_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, SETTING_ON_OFF_BTN_ON, &err);
+ setting_retm_if(err != 0, "set vconf failed");
+ setting_update_gl_item_chk_status(s_info.data_mobile_data, 1);
+ } else {
+ setting_set_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, SETTING_ON_OFF_BTN_OFF, &err);
+ setting_retm_if(err != 0, "set vconf failed");
-static void __change_3g_on_resp_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- SETTING_TRACE_BEGIN;
- retm_if(data == NULL, "Data parameter is NULL");
- Elm_Object_Item *subitem = (Elm_Object_Item *) data;
- Elm_Object_Item *parentItem = elm_genlist_item_parent_get(subitem);
- retm_if(parentItem == NULL, "parentItem is NULL");
+ setting_update_gl_item_chk_status(s_info.data_mobile_data, 0);
- Setting_GenGroupItem_Data *data_parentItem = elm_object_item_data_get(
- parentItem); /* parent data */
- retm_if(!data_parentItem, "!data_parentItem");
+ /* should set data_roming as same as status of
+ * use_packet_data */
+ int data_roaming_value = 0;
+ setting_get_bool_slp_key(BOOL_SLP_SETTING_DATA_ROAMING, &data_roaming_value, &err);
+ setting_retm_if(err != 0, "get vconf failed");
+ if (data_roaming_value) {
+ setting_set_bool_slp_key(BOOL_SLP_SETTING_DATA_ROAMING, SETTING_ON_OFF_BTN_OFF, &err);
+ setting_retm_if(err != 0, "set vconf failed");
+ setting_update_gl_item_chk_status(s_info.data_roaming, SETTING_ON_OFF_BTN_OFF);
+ }
+ }
+ } else if (POPUP_RESPONSE_CANCEL == response_type) {
+ /* rollback */
+ setting_set_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, value, &err);
+ setting_retm_if(err != 0, "set vconf failed");
+ setting_update_gl_item_chk_status(s_info.data_mobile_data, value);
+ }
- SettingNetwork *ad = data_parentItem->userdata;
- retm_if(ad == NULL, "ad is NULL");
+ evas_object_hide(ad->popup);
+ ui_app_exit();
+}
- int response_type = btn_type(obj);
- if (ad->popup) {
- evas_object_del(ad->popup);
- ad->popup = NULL;
- }
- if (POPUP_RESPONSE_OK == response_type) {
- /*changing of USE_PACKET_DATA was trigged by betwork searching*/
- ad->b_trigged_by_modechanging = TRUE;
- /*for delay.. */
- ad->popup = setting_create_popup_with_progressbar(ad,
- ad->md.window,
- PROGRESSBAR_STYLE,
- NULL, NULL, NULL, 0, TRUE, FALSE, 0);
- if (ad->timer) {
- ecore_timer_del(ad->timer);
- ad->timer = NULL;
- }
- ad->timer = ecore_timer_add(TIME_TO_TURN_OFF_3G,
- __set_net_mode_on_timer, subitem);
+Evas_Object *___load_popup_view(app_control_h service, SettingNetwork *ad)
+{
+ char *viewtype = NULL;
+ app_control_get_extra_data(service, "viewtype", &viewtype);
- } else if (POPUP_RESPONSE_CANCEL == response_type) {
- /*rollback.. */
- int value = 0;
- vconf_get_int(VCONFKEY_SETAPPL_NETWORK_MODE_INT, &value);
- SETTING_TRACE("vaule:%d", value);
-
- if ((value & TAPI_NETWORK_MODE_GSM)
- && (value & TAPI_NETWORK_MODE_WCDMA)) {
- SETTING_TRACE("has TAPI_NETWORK_MODE_GSM|TAPI_NETWORK_MODE_WCDMA");
- if (ad->lte_wcdma_gsm) elm_radio_value_set(
- ad->data_net_mode->rgd,
- ad->lte_wcdma_gsm->chk_status);
- } else if (value & TAPI_NETWORK_MODE_GSM) {
- SETTING_TRACE("has TAPI_NETWORK_MODE_WCDMA but not has TAPI_NETWORK_MODE_GSM");
- if (ad->gsm_only) elm_radio_value_set(
- ad->data_net_mode->rgd,
- ad->gsm_only->chk_status);
+ if (!safeStrCmp(viewtype, "mobile_data")) {
+ int status = SETTING_ON_OFF_BTN_OFF;
+ int err;
+ setting_get_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, &status, &err);
+ if (status) {
+ //set to off
+ ad->popup = setting_create_popup(ad, ad->md.window,
+ _(KeyStr_Network_Turn_Off_Mobile_Data),
+ _(KeyStr_Network_Mobile_Data_Has_Been_Disabled_Msg),
+ ___popup_view_resp_cb, 0, FALSE, FALSE,
+ 2, keyStr_OK, keyStr_CANCEL);
} else {
- SETTING_TRACE("not have TAPI_NETWORK_MODE_WCDMA");
- if (ad->wcdma_only) elm_radio_value_set(
- ad->data_net_mode->rgd,
- ad->wcdma_only->chk_status);
+ //set to on
+ ad->popup = setting_create_popup(ad, ad->md.window,
+ NULL,
+ _(Data_packet_Popup_desc),
+ ___popup_view_resp_cb, 0, FALSE, FALSE,
+ 2, _("IDS_ST_SK_YES"), _("IDS_ST_SK_NO"));
}
- /*elm_radio_value_set(ad->data_net_mode->rgd, ad->net_mode); */
- }
-}
-#endif
+ }
+ if (viewtype)
+ FREE(viewtype);
-#endif
+ return ad->popup;
+}
/**
* VCONFKEY_3G_ENABLE : notification handler
{
SETTING_TRACE_BEGIN;
ret_if(NULL == data);
- SettingNetwork *ad = data;
+
int status = vconf_keynode_get_bool(key);
char *vconf_name = vconf_keynode_get_name(key);
SETTING_TRACE("vconf_name:%s, status:%d", vconf_name, status);
if (!safeStrCmp(vconf_name, VCONFKEY_3G_ENABLE)) {
- if (ad->data_mobile_data) {
+ if (s_info.data_mobile_data) {
/* change 'use packet data' with the vconf value */
- ad->data_mobile_data->chk_status = status;
+ s_info.data_mobile_data->chk_status = status;
/* set toggle state */
-
- elm_object_item_data_set(ad->data_mobile_data->item,
- ad->data_mobile_data);
- elm_genlist_item_update(ad->data_mobile_data->item);
+ elm_object_item_data_set(s_info.data_mobile_data->item, s_info.data_mobile_data);
+ elm_genlist_item_update(s_info.data_mobile_data->item);
}
}
}
{
SETTING_TRACE_BEGIN;
ret_if(NULL == data);
- SettingNetwork *ad = data;
if (state == true) {
- if (ad->data_roaming && ad->data_roaming->item) {
- setting_enable_genlist_item(ad->data_roaming->item);
+ if (s_info.data_roaming && s_info.data_roaming->item) {
+ setting_enable_genlist_item(s_info.data_roaming->item);
SETTING_TRACE("AFTER enable data roaming");
}
} else {
- if (ad->data_roaming && ad->data_roaming->item) {
- setting_disable_genlist_item(ad->data_roaming->item);
+ if (s_info.data_roaming && s_info.data_roaming->item) {
+ setting_disable_genlist_item(s_info.data_roaming->item);
SETTING_TRACE("AFTER disable data roaming");
}
}
{
SETTING_TRACE_BEGIN;
ret_if(NULL == data);
- SettingNetwork *ad = data;
+
int status = vconf_keynode_get_bool(key);
char *vconf_name = vconf_keynode_get_name(key);
SETTING_TRACE("vconf_name:%s, status:%d", vconf_name, status);
if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_STATE_DATA_ROAMING_BOOL)
- && ad->data_roaming) {
+ && s_info.data_roaming) {
#if 0
- setting_update_gl_item_chk_status(ad->data_roaming, status);
+ setting_update_gl_item_chk_status(s_info.data_roaming, status);
if (status) {
int value = 0;
int err = 0;
static void __net_restriction_mode_vconf_change_cb(keynode_t *key, void *data)
{
SETTING_TRACE_BEGIN;
-
ret_if(NULL == data);
- SettingNetwork *ad = data;
-
int status = vconf_keynode_get_bool(key);
char *vconf_name = vconf_keynode_get_name(key);
if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_NETWORK_RESTRICT_MODE)) {
if (status) {
- if (ad->data_mobile_data)
+ if (s_info.data_mobile_data)
setting_disable_genlist_item(
- ad->data_mobile_data->item);
+ s_info.data_mobile_data->item);
- if (ad->data_roaming)
+ if (s_info.data_roaming)
setting_disable_genlist_item(
- ad->data_roaming->item);
+ s_info.data_roaming->item);
} else {
- if (ad->data_mobile_data)
+ if (s_info.data_mobile_data)
setting_enable_genlist_item(
- ad->data_mobile_data->item);
+ s_info.data_mobile_data->item);
- if (ad->data_roaming)
+ if (s_info.data_roaming)
setting_enable_genlist_item(
- ad->data_roaming->item);
+ s_info.data_roaming->item);
}
}
/* [UI] TITLE : "Mobile Data" */
setting_network_get_state_mobile_data(&value_mobile_data);
- ad->data_mobile_data = setting_create_Gendial_field_def(
+ s_info.data_mobile_data = setting_create_Gendial_field_def(
ad->md.genlist,
&itc_1text_1icon,
_item_Gendial_mouse_up_cb, ad,
NULL, value_mobile_data,
KeyStr_UseMobileData, NULL,
_chk_btn_cb);
- if (ad->data_mobile_data) {
- ad->data_mobile_data->userdata = ad;
- __BACK_POINTER_SET(ad->data_mobile_data);
+ if (s_info.data_mobile_data) {
+ s_info.data_mobile_data->userdata = ad;
+ __BACK_POINTER_SET(s_info.data_mobile_data);
} else {
- SETTING_TRACE_ERROR("ad->data_mobile_data is NULL");
+ SETTING_TRACE_ERROR("s_info.data_mobile_data is NULL");
}
/* [UI] Data Roaming - TITLE : "Data Roaming" */
SETTING_TRACE("---> data roaming value : %d", value_data_roaming);
- ad->data_roaming = setting_create_Gendial_field_def(ad->md.genlist,
+ s_info.data_roaming = setting_create_Gendial_field_def(ad->md.genlist,
&(itc_1text_1icon),
_item_Gendial_mouse_up_cb, ad,
SWALLOW_Type_1ICON_1RADIO, NULL,
NULL, value_data_roaming,
KeyStr_DataRoaming, NULL,
_chk_btn_cb);
- if (ad->data_roaming) {
- ad->data_roaming->userdata = ad;
- /*ad->data_roaming->isItemDisableFlag = value_mobile_data; */
- __BACK_POINTER_SET(ad->data_roaming);
+ if (s_info.data_roaming) {
+ s_info.data_roaming->userdata = ad;
+ /*s_info.data_roaming->isItemDisableFlag = value_mobile_data; */
+ __BACK_POINTER_SET(s_info.data_roaming);
} else {
- SETTING_TRACE_ERROR("ad->data_roaming is NULL");
+ SETTING_TRACE_ERROR("s_info.data_roaming is NULL");
}
/* ************* Service providers ************* */
NULL);
if (ad->data_net_mode) {
- ad->data_net_mode->int_slp_setting_binded =
- INT_SLP_SETTING_NETWORK_MODE;
+ ad->data_net_mode->int_slp_setting_binded = INT_SLP_SETTING_NETWORK_MODE;
__BACK_POINTER_SET(ad->data_net_mode);
} else {
SETTING_TRACE_ERROR("ad->data_net_modeis NULL");
{
SETTING_TRACE_BEGIN;
setting_retm_if(data == NULL, "Data parameter is NULL");
- SettingNetwork *ad = (SettingNetwork *)data;
int err = 0;
int value = 0;
/* rollback */
setting_set_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, value, &err);
setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(ad->data_mobile_data, value);
+ setting_update_gl_item_chk_status(s_info.data_mobile_data, value);
}
static void _setting_network_popup_data_roaming_rollback(void *data)
{
SETTING_TRACE_BEGIN;
setting_retm_if(data == NULL, "Data parameter is NULL");
- SettingNetwork *ad = (SettingNetwork *)data;
int err = 0;
int value = 0;
/* rollback */
setting_get_bool_slp_key(BOOL_SLP_SETTING_DATA_ROAMING, &value, &err);
- setting_update_gl_item_chk_status(ad->data_roaming, value);
+ setting_update_gl_item_chk_status(s_info.data_roaming, value);
}
static void _setting_network_popup_mobile_data_hide_cb(void *data,
select_network_show(ad);
} else if (!safeStrCmp(KeyStr_UseMobileData, list_item->keyStr)) {
/* new status */
- setting_update_gl_item_chk_status(ad->data_mobile_data,
+ setting_update_gl_item_chk_status(s_info.data_mobile_data,
!(list_item->chk_status));
if (!list_item->chk_status) {
/* On -> Off */
setting_network_set_state_mobile_data(
SETTING_ON_OFF_BTN_OFF);
setting_update_gl_item_chk_status(
- ad->data_roaming, 0);
+ s_info.data_roaming, 0);
}
} else {
/* Off -> On */
int err;
- if (obj == ad->data_mobile_data->eo_check) {
+ if (obj == s_info.data_mobile_data->eo_check) {
SETTING_TRACE(" TOUCH HANDLING MOBILE DATA");
/* On -> Off */
setting_retm_if(err != 0, "set vconf failed");
setting_update_gl_item_chk_status(
- ad->data_roaming, 0);
+ s_info.data_roaming, 0);
}
} else {
FALSE, 2, "IDS_ST_BUTTON_ENABLE",
"IDS_ST_BUTTON_CANCEL_ABB");
}
- } else if (obj == ad->data_roaming->eo_check) {
+ } else if (obj == s_info.data_roaming->eo_check) {
SETTING_TRACE(" TOUCH HANDLING DATA ROAMING");
if (list_item->chk_status) {
SETTING_TRACE(" TOUCH HANDLING DATA ROAMING - set true");
SETTING_TRACE(" TOUCH HANDLING DATA ROAMING - set false");
setting_network_set_state_data_roaming(
SETTING_ON_OFF_BTN_OFF);
- setting_update_gl_item_chk_status(ad->data_roaming,
+ setting_update_gl_item_chk_status(s_info.data_roaming,
SETTING_ON_OFF_BTN_OFF);
}
}
setting_network_set_state_mobile_data(
SETTING_ON_OFF_BTN_ON);
setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(ad->data_mobile_data,
+ setting_update_gl_item_chk_status(s_info.data_mobile_data,
1);
if (s_info.popup_chk && elm_check_state_get(
s_info.popup_chk)) {
setting_network_set_state_mobile_data(
SETTING_ON_OFF_BTN_OFF);
setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(ad->data_mobile_data,
+ setting_update_gl_item_chk_status(s_info.data_mobile_data,
0);
if (s_info.popup_chk && elm_check_state_get(
s_info.popup_chk)) {
setting_retm_if(err != 0, "set vconf failed");
setting_update_gl_item_chk_status(
- ad->data_roaming, 0);
+ s_info.data_roaming, 0);
}
}
} else if (POPUP_RESPONSE_CANCEL == response_type) {
SETTING_TRACE("obj:%p", obj);
if (POPUP_RESPONSE_OK == response_type) {
- SETTING_TRACE(" >>>> ad->data_roaming->chk_status = %d",
- ad->data_roaming->chk_status);
- /*setting_update_gl_item_chk_status(ad->data_roaming,
- * !(ad->data_roaming->chk_status)); */
+ SETTING_TRACE(" >>>> s_info.data_roaming->chk_status = %d",
+ s_info.data_roaming->chk_status);
+ /*setting_update_gl_item_chk_status(s_info.data_roaming,
+ * !(s_info.data_roaming->chk_status)); */
int value = 0;
int err = 0;
SETTING_TRACE("1 trying ON");
setting_network_set_state_data_roaming(
SETTING_ON_OFF_BTN_ON);
- setting_update_gl_item_chk_status(ad->data_roaming,
+ setting_update_gl_item_chk_status(s_info.data_roaming,
SETTING_ON_OFF_BTN_ON);
/* if called by other apps, exit app */
SETTING_TRACE("2 trying OFF");
setting_network_set_state_data_roaming(
SETTING_ON_OFF_BTN_OFF);
- setting_update_gl_item_chk_status(ad->data_roaming,
+ setting_update_gl_item_chk_status(s_info.data_roaming,
SETTING_ON_OFF_BTN_OFF);
}
} else {
int err = 0;
setting_get_bool_slp_key(BOOL_SLP_SETTING_DATA_ROAMING, &value,
&err);
- setting_update_gl_item_chk_status(ad->data_roaming, value);
+ setting_update_gl_item_chk_status(s_info.data_roaming, value);
}
if (ad->popup) {
elm_object_text_set(s_info.popup_data_off, _(pop_info));
- if (pop_title) {
- elm_object_part_text_set(s_info.popup_data_off, "title,text",
- _(pop_title));
- }
+ if (pop_title)
+ elm_object_part_text_set(s_info.popup_data_off, "title,text", _(pop_title));
+
G_FREE(pop_title);
G_FREE(pop_info);
}
+static void _main_genlist_update(void *cb)
+{
+ const char *title = Data_packet_Sub_desc;
+ Elm_Object_Item *item = NULL;
+ Setting_GenGroupItem_Data *item_data = NULL;
+ SettingNetwork *ad = cb;
+
+ /*update items */
+ elm_genlist_realized_items_update(ad->md.genlist);
+ if (s_info.data_mobile_data) {
+ item = elm_genlist_item_next_get(s_info.data_mobile_data->item);
+ if (item)
+ item = elm_genlist_item_next_get(item);
+
+ if (item)
+ item_data = (Setting_GenGroupItem_Data*) elm_object_item_data_get(item);
+ }
+
+ if (item_data) {
+ item_data->keyStr = strdup(title);
+ elm_object_item_data_set(item_data->item, item_data);
+ elm_genlist_item_update(item_data->item);
+ }
+}
+
static int _view_language_changed(void *cb)
{
__update_mobile_data_on_popup(cb);
__update_mobile_data_off_popup(cb);
+ _main_genlist_update(cb);
return SETTING_RETURN_SUCCESS;
}
Setting_GenGroupItem_Data *wcdma_gsm;
Setting_GenGroupItem_Data *wcdma_only;
Setting_GenGroupItem_Data *gsm_only;
+#ifdef UI_NETWORK_MODE
+ int net_mode; /* like vconf key */
+#endif
} s_info = {0,};
int ret = setting_view_change(&setting_view_network_mode, &setting_view_network_main, s_info.ad);
if (!ret) {
dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] Function 'setting_view_change()' failed: %d", __FILE__, __LINE__, ret);
+ return EINA_FALSE;
}
return EINA_TRUE;
}
+/**
+ * @see also setting_tapi_set_band_cb
+ * @see also tel_get_network_mode
+ */
+static void setting_tapi_get_band_cb(TapiHandle *handle, int result, void *data, void *user_data)
+{
+ SETTING_TRACE_BEGIN;
+ SETTING_TRACE(" - result = 0x%x", result);
+ ret_if(!user_data);
+ SettingNetwork *ad = user_data;
+
+ if (ad->network_popup) {
+ evas_object_del(ad->network_popup);
+ ad->network_popup = NULL;
+ }
+
+ if (result == TAPI_NETWORK_NO_ERR) {
+ int band;
+ int temp_net_mode = 0;
+ memcpy(&band, data, sizeof(int));
+
+ SETTING_TRACE("tel_get_network_mode() callback received, band=%d",
+ band);
+
+ temp_net_mode = band;
+
+ /* ***BEGIN*** Fixed the problem of word twinkle
+ * SAMSUNG 2010/7/21 modify */
+ s_info.net_mode = temp_net_mode;
+
+ const char *sub_desc = NULL;
+ /* Need to fix */
+ char *szCscFeatureValue = "all_numeric";
+
+ switch (s_info.net_mode) {
+ case TAPI_NETWORK_MODE_AUTO:
+ case TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA
+ | TAPI_NETWORK_MODE_GSM:
+ if (is_lte_on_feature(ad)) {
+ if (strcmp(szCscFeatureValue, "all_numeric") == 0)
+ sub_desc = _("IDS_ST_OPT_4G_3G_2G_HAUTO_CONNECT");
+ else
+ sub_desc = _("IDS_ST_OPT_LTE_WCDMA_GSM_HAUTO_CONNECT");
+ }
+ break;
+ case TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM:
+ if (strcmp(szCscFeatureValue, "all_numeric") == 0)
+ sub_desc = _("IDS_ST_OPT_3G_2G_HAUTO_CONNECT");
+ else
+ sub_desc = _("IDS_ST_OPT_WCDMA_GSM_HAUTO_CONNECT");
+ break;
+ case TAPI_NETWORK_MODE_WCDMA:
+ if (strcmp(szCscFeatureValue, "all_numeric") == 0)
+ sub_desc = _("IDS_ST_BODY_3G_ONLY");
+ else
+ sub_desc = _("IDS_ST_MBODY_WCDMA_ONLY");
+ break;
+ case TAPI_NETWORK_MODE_GSM:
+ if (strcmp(szCscFeatureValue, "all_numeric") == 0)
+ sub_desc = _("IDS_ST_OPT_2G_ONLY");
+ else
+ sub_desc = _("IDS_ST_MBODY_GSM_ONLY");
+ break;
+ /* for docomo */
+ case TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA:
+ sub_desc = _(Keystr_NetBrand_LTE_WCDMA);
+ break;
+ default:
+ break;
+ }
+
+ if (ad->data_net_mode) {
+ ad->data_net_mode->sub_desc = (char *)g_strdup(
+ sub_desc);
+ elm_object_item_data_set(ad->data_net_mode->item,
+ ad->data_net_mode);
+ elm_genlist_item_update(ad->data_net_mode->item);
+ elm_genlist_item_expanded_set(ad->data_net_mode->item,
+ FALSE);
+ }
+
+ vconf_set_int(VCONFKEY_SETAPPL_NETWORK_MODE_INT, s_info.net_mode);
+ /*} */
+ /* ****END**** Fixed the problem of word twinkle
+ * SAMSUNG 2010/7/21 modify */
+ } else {
+ SETTING_TRACE("tel_get_network_mode() callback error(%d)",
+ result);
+ }
+}
+
+/**
+ * @see also tel_set_network_mode : registers this callback function
+ */
+void setting_tapi_set_band_cb(TapiHandle *handle, int result, void *data, void *user_data) /* TODO: Move to 'select-network' */
+{
+ SETTING_TRACE_BEGIN;
+ SETTING_TRACE(" - result = 0x%x , %d", result, result);
+ ret_if(!user_data);
+ SettingNetwork *ad = user_data;
+ ret_if(NULL == ad->data_net_mode);
+ if (ad->network_popup) {
+ evas_object_del(ad->network_popup);
+ ad->network_popup = NULL;
+ }
+
+ if (tel_get_network_mode(ad->handle, setting_tapi_get_band_cb, ad)
+ != TAPI_API_SUCCESS) {
+ SETTING_TRACE_ERROR("*** [ERR] tel_get_network_band. ***");
+ }
+}
+
+void setting_network_mode_app_control(SettingNetwork *ad)
+{
+ /* register view node table */
+ if (ad->handle && tel_get_network_mode(ad->handle, setting_tapi_get_band_cb, ad) != TAPI_API_SUCCESS)
+ SETTING_TRACE_ERROR("*** [ERR] tel_get_network_band. ***");
+}
+
/**
* item in genlist on the popup 'NETWORK MODE'
*/
Setting_GenGroupItem_Data *data_subItem = elm_object_item_data_get(subitem);
- SETTING_TRACE("ad->net_mode=%d", ad->net_mode);
+ SETTING_TRACE("s_info.net_mode=%d", s_info.net_mode);
SETTING_TRACE("elm_radio_value_get(ad->data_net_mode->rgd):%d", elm_radio_value_get(ad->data_net_mode->rgd));
SETTING_TRACE("data_subItem->chk_status=%d", data_subItem->chk_status);
- if (ad->net_mode == data_subItem->chk_status) {
+ if (s_info.net_mode == data_subItem->chk_status) {
SETTING_TRACE("No change");
return;
}
NULL, 0.0, TRUE, FALSE, 0);
elm_radio_value_set(ad->data_net_mode->rgd, data_subItem->chk_status);
- ad->net_mode = data_subItem->chk_status;
+ s_info.net_mode = data_subItem->chk_status;
/*for delay.. */
if (ad->timer) {
setting_create_popup(ad, ad->md.window, NULL, Invok_API_Failed_Desc, NULL, POPUP_INTERVAL, FALSE, FALSE, 0);
/*rollback */
int err = 0;
- int ret = setting_get_int_slp_key(ad->data_net_mode->int_slp_setting_binded, &(ad->net_mode), &err);
+ int ret = setting_get_int_slp_key(ad->data_net_mode->int_slp_setting_binded, &(s_info.net_mode), &err);
if (ret == SETTING_RETURN_FAIL)
SETTING_TRACE_ERROR("failed to get vconf");
} else {
static inline void _set_mode(Setting_GenGroupItem_Data *item_data)
{
SETTING_TRACE_BEGIN;
- if (!item_data) {
+ if (!item_data)
dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] item_data == NULL", __FILE__, __LINE__);
- }
elm_radio_value_set(s_info.ad->data_net_mode->rgd, item_data->chk_status);
SETTING_TRACE("item_data->chk_status=%d checked", item_data->chk_status);
Evas_Object *rdg = _prepare_radio_group(value);
/* LTE/WCDMA/GSM */
- if (is_lte_on_feature(s_info.ad)) {
+ if (is_lte_on_feature(s_info.ad))
s_info.lte_wcdma_gsm = _add_mode(rdg, "IDS_ST_OPT_4G_3G_2G_HAUTO_CONNECT", TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM);
- }
s_info.wcdma_gsm = _add_mode(rdg, "IDS_ST_OPT_3G_2G_HAUTO_CONNECT", TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM);
s_info.wcdma_only = _add_mode(rdg, "IDS_ST_BODY_3G_ONLY", TAPI_NETWORK_MODE_WCDMA);
#include <setting-cfg.h>
#include "setting-network-select-network.h"
#include "setting-network-connection-create.h"
+#include "setting-network-main.h"
#define SETTING_NETWORK_PACKAGE_NAME "org.tizen.setting-network"
#define MAX_ID_LEN 512
}
}
-void ___popup_view_resp_cb(void *data, Evas_Object *obj, void *event_info)
-{
- SETTING_TRACE_BEGIN;
- retm_if(data == NULL, "Data parameter is NULL");
-
- SettingNetwork *ad = (SettingNetwork *)data;
- int err = 0; /* error check */
- int response_type = btn_type(obj);
-
- int value = 0;
- setting_get_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA, &value,
- &err);
- setting_retm_if(err != 0, "get vconf failed");
- SETTING_TRACE("value = %d", value);
- if (POPUP_RESPONSE_OK == response_type) {
- if (value == 0) {
- setting_set_bool_slp_key(
- BOOL_SLP_SETTING_USE_PACKET_DATA,
- SETTING_ON_OFF_BTN_ON, &err);
- setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(ad->data_mobile_data,
- 1);
- } else {
- setting_set_bool_slp_key(
- BOOL_SLP_SETTING_USE_PACKET_DATA,
- SETTING_ON_OFF_BTN_OFF, &err);
- setting_retm_if(err != 0, "set vconf failed");
-
- setting_update_gl_item_chk_status(ad->data_mobile_data,
- 0);
-
- /* should set data_roming as same as status of
- * use_packet_data */
- int data_roaming_value = 0;
- setting_get_bool_slp_key(BOOL_SLP_SETTING_DATA_ROAMING,
- &data_roaming_value, &err);
- setting_retm_if(err != 0, "get vconf failed");
- if (data_roaming_value) {
- setting_set_bool_slp_key(
- BOOL_SLP_SETTING_DATA_ROAMING,
- SETTING_ON_OFF_BTN_OFF, &err);
- setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(
- ad->data_roaming,
- SETTING_ON_OFF_BTN_OFF);
- }
- }
- } else if (POPUP_RESPONSE_CANCEL == response_type) {
- /* rollback */
- setting_set_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA,
- value, &err);
- setting_retm_if(err != 0, "set vconf failed");
- setting_update_gl_item_chk_status(ad->data_mobile_data, value);
- }
-#if 0
- if (ad->popup) {
- evas_object_del(ad->popup);
- ad->popup = NULL;
- }
-#else
-
- evas_object_hide(ad->popup);
- ui_app_exit();
-#endif
-}
-
-static Evas_Object *___load_popup_view(app_control_h service,
- SettingNetwork *ad)
-{
- char *viewtype = NULL;
- app_control_get_extra_data(service, "viewtype", &viewtype);
-
- if (!safeStrCmp(viewtype, "mobile_data")) {
- int status = SETTING_ON_OFF_BTN_OFF;
- int err;
- setting_get_bool_slp_key(BOOL_SLP_SETTING_USE_PACKET_DATA,
- &status, &err);
- if (status) {
- //set to off
- ad->popup = setting_create_popup(ad, ad->md.window,
- _(KeyStr_Network_Turn_Off_Mobile_Data),
- _(KeyStr_Network_Mobile_Data_Has_Been_Disabled_Msg),
- ___popup_view_resp_cb, 0, FALSE, FALSE,
- 2, keyStr_OK, keyStr_CANCEL);
- } else {
- //set to on
- ad->popup = setting_create_popup(ad, ad->md.window,
- NULL, _(Data_packet_Popup_desc), ___popup_view_resp_cb,
- 0, FALSE, FALSE, 2, _("IDS_ST_SK_YES"),
- _("IDS_ST_SK_NO"));
- }
-
- }
- if (viewtype)
- FREE(viewtype);
-
- return ad->popup;
-}
-
static bool on_app_create(void *priv)
{
int ret;
if (!ad->handle)
SETTING_TRACE_DEBUG("%s*** [ERR] tel_init. ***%s", SETTING_FONT_RED, SETTING_FONT_BLACK);
+ /* register view node table */
+ setting_network_mode_app_control(ad);
+
if (connection_create(&(ad->connection)) != CONNECTION_ERROR_NONE)
SETTING_TRACE_ERROR("***Failed to connection_create.***");
static void _lang_changed(app_event_info_h event_info, void *priv)
{
SETTING_TRACE_BEGIN;
- Elm_Object_Item *item = NULL;
- Setting_GenGroupItem_Data *item_data = NULL;
- const char *title = Data_packet_Sub_desc;
SettingNetwork *ad = (SettingNetwork *)priv;
ret_if(!ad || !ad->md.genlist || !setting_view_network_main.is_create);
- /*update items */
- elm_genlist_realized_items_update(ad->md.genlist);
- if (ad->data_mobile_data) {
- item = elm_genlist_item_next_get(ad->data_mobile_data->item);
- if (item)
- item = elm_genlist_item_next_get(item);
-
- if (item)
- item_data = (Setting_GenGroupItem_Data *)
- elm_object_item_data_get(item);
- }
- if (item_data) {
- item_data->keyStr = strdup(title);
- elm_object_item_data_set(item_data->item, item_data);
- elm_genlist_item_update(item_data->item);
- }
#ifdef UI_NETWORK_MODE
- /*update sub text */
- if (ad->handle && tel_get_network_mode(ad->handle, setting_tapi_get_band_cb, ad) != TAPI_API_SUCCESS)
- SETTING_TRACE_ERROR("*** [ERR] tel_get_network_band. ***");
-
+ setting_network_mode_app_control(ad);
setting_network_update_sel_network(ad);
#endif
/*update title */
*call back func
*
***************************************************/
-#ifdef UI_NETWORK_MODE
-/**
- * @see also setting_tapi_set_band_cb
- * @see also tel_get_network_mode
- */
-void setting_tapi_get_band_cb(TapiHandle *handle, int result, void *data, void *user_data)
-{
- SETTING_TRACE_BEGIN;
- SETTING_TRACE(" - result = 0x%x", result);
- ret_if(!user_data);
- SettingNetwork *ad = user_data;
-
- if (ad->network_popup) {
- evas_object_del(ad->network_popup);
- ad->network_popup = NULL;
- }
-
- if (result == TAPI_NETWORK_NO_ERR) {
- int band;
- int temp_net_mode = 0;
- memcpy(&band, data, sizeof(int));
-
- SETTING_TRACE("tel_get_network_mode() callback received, band=%d",
- band);
-
- temp_net_mode = band;
-
- /* ***BEGIN*** Fixed the problem of word twinkle
- * SAMSUNG 2010/7/21 modify */
- ad->net_mode = temp_net_mode;
-
- const char *sub_desc = NULL;
- /* Need to fix */
- char *szCscFeatureValue = "all_numeric";
-
- switch (ad->net_mode) {
- case TAPI_NETWORK_MODE_AUTO:
- case TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA
- | TAPI_NETWORK_MODE_GSM:
- if (is_lte_on_feature(ad)) {
- if (strcmp(szCscFeatureValue, "all_numeric") == 0)
- sub_desc = _("IDS_ST_OPT_4G_3G_2G_HAUTO_CONNECT");
- else
- sub_desc = _("IDS_ST_OPT_LTE_WCDMA_GSM_HAUTO_CONNECT");
- }
- break;
- case TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM:
- if (strcmp(szCscFeatureValue, "all_numeric") == 0)
- sub_desc = _("IDS_ST_OPT_3G_2G_HAUTO_CONNECT");
- else
- sub_desc = _("IDS_ST_OPT_WCDMA_GSM_HAUTO_CONNECT");
- break;
- case TAPI_NETWORK_MODE_WCDMA:
- if (strcmp(szCscFeatureValue, "all_numeric") == 0)
- sub_desc = _("IDS_ST_BODY_3G_ONLY");
- else
- sub_desc = _("IDS_ST_MBODY_WCDMA_ONLY");
- break;
- case TAPI_NETWORK_MODE_GSM:
- if (strcmp(szCscFeatureValue, "all_numeric") == 0)
- sub_desc = _("IDS_ST_OPT_2G_ONLY");
- else
- sub_desc = _("IDS_ST_MBODY_GSM_ONLY");
- break;
- /* for docomo */
- case TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA:
- sub_desc = _(Keystr_NetBrand_LTE_WCDMA);
- break;
- default:
- break;
- }
-
- if (ad->data_net_mode) {
- ad->data_net_mode->sub_desc = (char *)g_strdup(
- sub_desc);
- elm_object_item_data_set(ad->data_net_mode->item,
- ad->data_net_mode);
- elm_genlist_item_update(ad->data_net_mode->item);
- elm_genlist_item_expanded_set(ad->data_net_mode->item,
- FALSE);
- }
-
- vconf_set_int(VCONFKEY_SETAPPL_NETWORK_MODE_INT, ad->net_mode);
- /*} */
- /* ****END**** Fixed the problem of word twinkle
- * SAMSUNG 2010/7/21 modify */
- } else {
- SETTING_TRACE("tel_get_network_mode() callback error(%d)",
- result);
- }
-}
-
-/**
- * @see also tel_set_network_mode : registers this callback function
- */
-void setting_tapi_set_band_cb(TapiHandle *handle, int result, void *data, void *user_data) /* TODO: Move to 'select-network' */
-{
- SETTING_TRACE_BEGIN;
- SETTING_TRACE(" - result = 0x%x , %d", result, result);
- ret_if(!user_data);
- SettingNetwork *ad = user_data;
- ret_if(NULL == ad->data_net_mode);
- if (ad->network_popup) {
- evas_object_del(ad->network_popup);
- ad->network_popup = NULL;
- }
-
- if (tel_get_network_mode(ad->handle, setting_tapi_get_band_cb, ad)
- != TAPI_API_SUCCESS) {
- SETTING_TRACE_ERROR("*** [ERR] tel_get_network_band. ***");
- }
-}
-#endif
void setting_network_reget_profile_list(void *cb)
{