int result = WIRED_STATUS_FAIL;
connection_ethernet_state_e state;
connection_ethernet_cable_state_e cable;
+ connection_profile_state_e profile_state = CONNECTION_PROFILE_STATE_DISCONNECTED;
ret = connection_get_ethernet_cable_state(data->conn, &cable);
if (ret == CONNECTION_ERROR_NONE) {
if (cable == 0)
- return result;
+ return WIRED_STATUS_NO_CABLE;
}
ret = connection_get_ethernet_state(data->conn, &state);
case CONNECTION_ETHERNET_STATE_DEACTIVATED:
_DBG(" Ethernet profile is not exist !");
result = WIRED_STATUS_FAIL;
- break;
+ break;
case CONNECTION_ETHERNET_STATE_DISCONNECTED:
_DBG(" Disconnected state");
- result = WIRED_STATUS_PROGRESS;
- break;
+ ret = connection_profile_get_state(data->profile, &profile_state);
+ if (profile_state == CONNECTION_PROFILE_STATE_DISCONNECTED)
+ result = WIRED_STATUS_FAIL;
+ else
+ result = WIRED_STATUS_PROGRESS;
+ break;
case CONNECTION_ETHERNET_STATE_CONNECTED:
_DBG(" Successfully connected");
result = WIRED_STATUS_COMPLETE;
- break;
+ break;
+ default:
+ /* Nothing to do for default case */
+ break;
}
}
return result;
Evas_Object *connecting_wireless_popup;
Evas_Object *connected_wireless_popup;
Evas_Object *failed_wireless_popup;
+Evas_Object *no_network_cable_popup;
static void _remove_wifi_passcode_popup(struct _priv *priv);
static void _retry_wired_network(struct _priv *priv);
}
void _destroy_wired_status_popup()
{
- evas_object_hide(connected_wired_popup);
- evas_object_hide(connecting_wired_popup);
- evas_object_hide(failed_wired_popup);
+ evas_object_hide(connected_wired_popup);
+ evas_object_del(connected_wired_popup);
+ connected_wired_popup = NULL;
- evas_object_del(connected_wired_popup);
- connected_wired_popup = NULL;
+ evas_object_hide(connecting_wired_popup);
+ evas_object_del(connecting_wired_popup);
+ connecting_wired_popup = NULL;
- evas_object_del(connecting_wired_popup);
- connecting_wired_popup = NULL;
+ evas_object_hide(failed_wired_popup);
+ evas_object_del(failed_wired_popup);
+ failed_wired_popup = NULL;
- evas_object_del(failed_wired_popup);
- failed_wired_popup = NULL;
+ evas_object_hide(no_network_cable_popup);
+ evas_object_del(no_network_cable_popup);
+ no_network_cable_popup = NULL;
- return;
+ return;
}
static void _network_type_key_down_cb(int id, void *data, Evas *e,
evas_object_show(failed_wired_popup);
}
+void _popup_no_network_cable_status(struct _priv *priv)
+{
+ SETTING_TRACE_BEGIN;
+ Evas_Object *ly, *close_btn, *retry_btn;
+
+ _destroy_wired_status_popup();
+
+ no_network_cable_popup = utils_add_popup(priv->base, STYLE_POPUP, STR_WIRED, NULL);
+ if (!no_network_cable_popup) {
+ _ERR("Add popup failed");
+ return;
+ }
+ ly = utils_add_layout(no_network_cable_popup, GRP_FAILED_IMAGE_NETWORK_POPUP, EINA_FALSE);
+ if (!ly) {
+ _ERR("Add layout failed.");
+ evas_object_del(no_network_cable_popup);
+ return;
+ }
+ elm_object_part_text_set(ly, "part.text.content", "Ethernet cable state is detached.");
+
+ close_btn = elm_button_add(no_network_cable_popup);
+ if (!close_btn) {
+ _ERR("Add button failed.");
+ evas_object_del(no_network_cable_popup);
+ return;
+ }
+ elm_object_text_set(close_btn, "CLOSE");
+ elm_object_part_content_set(no_network_cable_popup, "button1", close_btn);
+ evas_object_smart_callback_add(close_btn, "clicked", _close_wired_dismissed_cb, no_network_cable_popup);
+
+ retry_btn = elm_button_add(no_network_cable_popup);
+ if (!retry_btn) {
+ _ERR("Add button failed.");
+ evas_object_del(no_network_cable_popup);
+ return;
+ }
+ elm_object_text_set(retry_btn, "RETRY");
+ elm_object_part_content_set(no_network_cable_popup, "button2", retry_btn);
+ evas_object_smart_callback_add(retry_btn, "clicked", _wired_retry_cb, no_network_cable_popup);
+
+ elm_object_content_set(no_network_cable_popup, ly);
+ evas_object_show(no_network_cable_popup);
+}
+
static void _update_wired_network_status(struct _priv *priv)
{
int res = get_wired_network_status(priv->wired);
switch (res) {
case WIRED_STATUS_COMPLETE:
- //elm_object_signal_emit(priv->wired_layout, SIG_WIRED_COMPLETE, SRC_ELM);
- //elm_object_part_text_set(priv->wired_layout, "part.wired.text",
- //STR_WIRED_COMPLETED);
- //evas_object_hide(connecting_wired_popup);
- //evas_object_hide(failed_wired_popup);
- _popup_connected_wired_status(priv);
- break;
+ _popup_connected_wired_status(priv);
+ break;
case WIRED_STATUS_PROGRESS:
- //elm_object_signal_emit(priv->wired_layout, SIG_WIRED_PROGRESS, SRC_ELM);
- //elm_object_part_text_set(priv->wired_layout, "part.wired.text",
- // STR_WIRED_PROGRESS);
- //evas_object_hide(connected_wired_popup);
- //evas_object_hide(failed_wired_popup);
- _popup_connecting_wired_status(priv);
- break;
+ _popup_connecting_wired_status(priv);
+ break;
+
+ case WIRED_STATUS_NO_CABLE:
+ _popup_no_network_cable_status(priv);
+ break;
case WIRED_STATUS_FAIL:
default:
- //elm_object_signal_emit(priv->wired_layout, SIG_WIRED_FAIL, SRC_ELM);
- //elm_object_part_text_set(priv->wired_layout, "part.wired.text",
- // STR_WIRED_FAILED);
- //evas_object_hide(connecting_wired_popup);
- //evas_object_hide(connected_wired_popup);
- _popup_failed_wired_status(priv);
- break;
+ _popup_failed_wired_status(priv);
+ break;
}
}