Implement cancel connecting ap 17/17617/2
authorHyunjee Kim <hj0426.kim@samsung.com>
Mon, 20 Jan 2014 07:07:30 +0000 (16:07 +0900)
committerhyunjee Kim <hj0426.kim@samsung.com>
Fri, 7 Mar 2014 08:26:50 +0000 (00:26 -0800)
Change-Id: Ia6f5aa20b448305402a677f300ac416e7d8af7a3
Signed-off-by: Hyunjee Kim <hj0426.kim@samsung.com>
packaging/wifi-efl-ug.spec
sources/ui-gadget/include/ug_wifi.h
sources/ui-gadget/include/viewer_manager.h
sources/ui-gadget/viewers-layout/wifi_viewer_list.c

index a010059..38072f5 100644 (file)
@@ -1,6 +1,6 @@
 Name:       wifi-efl-ug
 Summary:    Wi-Fi UI Gadget
-Version:    0.5.2_47
+Version:    0.5.2_48
 Release:    1
 Group:      App/Network
 License:    Flora License
index dc152fd..b41c48b 100644 (file)
@@ -78,7 +78,8 @@ typedef struct {
        char *rbutton_setup_wizard_skip;
        popup_manager_object_t *popup_manager;
        eap_connect_data_t *eap_view;
-       bool is_disconnect;
+
+       bool ap_connected;
 } wifi_appdata ;
 
 int wifi_exit(void);
index 6b4f338..302f395 100644 (file)
@@ -47,7 +47,8 @@ typedef enum {
        VIEWER_ITEM_RADIO_MODE_OFF = 0x01,
        VIEWER_ITEM_RADIO_MODE_CONNECTED,
        VIEWER_ITEM_RADIO_MODE_CONNECTING,
-       VIEWER_ITEM_RADIO_MODE_MAX
+       VIEWER_ITEM_RADIO_MODE_MAX,
+       VIEWER_ITEM_RADIO_MODE_DISCONNECTING
 } VIEWER_ITEM_RADIO_MODES;
 
 typedef enum {
index b6eebd4..1eacc54 100644 (file)
@@ -494,15 +494,12 @@ static void __viewer_list_item_clicked_cb(void *data, Evas_Object *obj,
                }
                break;
 
-       case VIEWER_ITEM_RADIO_MODE_CONNECTED:
+       case VIEWER_ITEM_RADIO_MODE_CONNECTING:
                ret = wlan_manager_disconnect(device_info->ap);
                if (ret != WLAN_MANAGER_ERR_NONE)
-                       ERROR_LOG(UG_NAME_NORMAL, "Failed disconnect [0x%x]", device_info);
-               else
-                       ug_app_state->is_disconnect = true;
+                       ERROR_LOG(UG_NAME_NORMAL, "Failed connect cancel [0x%x]", device_info);
                break;
-
-       case VIEWER_ITEM_RADIO_MODE_CONNECTING:
+       case VIEWER_ITEM_RADIO_MODE_CONNECTED:
        default:
                INFO_LOG(UG_NAME_NORMAL, "Ignore click");
                break;
@@ -518,10 +515,9 @@ static char *viewer_list_get_device_status_txt(wifi_device_info_t *wifi_device,
        char *status_txt = NULL;
        /* The strings are currently hard coded. It will be replaced with string ids later */
        if (VIEWER_ITEM_RADIO_MODE_CONNECTING == mode) {
-               if (ug_app_state->is_disconnect)
-                       status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Disconnecting));
-               else
-                       status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Connecting));
+               status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Connecting));
+       } else if (VIEWER_ITEM_RADIO_MODE_DISCONNECTING == mode) {
+               status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Disconnecting));
        } else if (VIEWER_ITEM_RADIO_MODE_CONNECTED == mode) {
                status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Connected));
        } else if (VIEWER_ITEM_RADIO_MODE_OFF == mode) {
@@ -530,7 +526,6 @@ static char *viewer_list_get_device_status_txt(wifi_device_info_t *wifi_device,
                status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Unknown));
                INFO_LOG(UG_NAME_NORMAL, "Invalid mode: %d", mode);
        }
-       ug_app_state->is_disconnect = false;
        return status_txt;
 }
 
@@ -542,7 +537,6 @@ Evas_Object* viewer_list_create(Evas_Object *win)
        first_item = NULL;
        last_item = NULL;
        grouptitle = NULL;
-       ug_app_state->is_disconnect = false;
 
        assertm_if(NULL == win, "NULL!!");
        viewer_list = elm_genlist_add(win);
@@ -643,6 +637,9 @@ int viewer_list_item_radio_mode_set(Elm_Object_Item* item,
                return FALSE;
        }
 
+       if (gdata->radio_mode == VIEWER_ITEM_RADIO_MODE_CONNECTED)
+               mode = VIEWER_ITEM_RADIO_MODE_DISCONNECTING;
+
        if (gdata->radio_mode == mode) {
                INFO_LOG(UG_NAME_NORMAL, "[%s] is already in requested state", gdata->device_info->ssid);
                return FALSE;