Remove UI Dependency for headless devices
[platform/core/connectivity/net-config.git] / src / wifi-state.c
index 3b34ca4..4fb0e44 100755 (executable)
 
 #include <vconf.h>
 #include <vconf-keys.h>
-#include <bundle.h>
-#include <bundle_internal.h>
-#include <eventsystem.h>
-#include <syspopup_caller.h>
 
 #include "log.h"
 #include "util.h"
@@ -45,25 +41,14 @@ static wifi_tech_state_e g_tech_state = NETCONFIG_WIFI_TECH_UNKNOWN;
 
 static GSList *notifier_list = NULL;
 
+static guint network_connected_popup_timer_id = 0;
+static gboolean block_network_connected_popup = FALSE;
 
-static void __netconfig_pop_wifi_connected_poppup(const char *ssid)
+static gboolean _block_network_connection_popup(gpointer data)
 {
-       bundle *b = NULL;
-
-       if (ssid == NULL)
-               return;
-
-       b = bundle_create();
-
-       bundle_add(b, "_SYSPOPUP_TITLE_", "Network connection popup");
-       bundle_add(b, "_SYSPOPUP_TYPE_", "toast_popup");
-       bundle_add(b, "_SYSPOPUP_CONTENT_", "wifi connected");
-       bundle_add(b, "_AP_NAME_", ssid);
-
-       DBG("Launch Wi-Fi connected alert network popup");
-       syspopup_launch("net-popup", b);
-
-       bundle_free(b);
+       block_network_connected_popup = FALSE;
+       netconfig_stop_timer(&network_connected_popup_timer_id);
+       return FALSE;
 }
 
 static void __set_wifi_connected_essid(void)
@@ -87,7 +72,15 @@ static void __set_wifi_connected_essid(void)
        }
 
        netconfig_set_vconf_str(VCONFKEY_WIFI_CONNECTED_AP_NAME, essid_name);
-       __netconfig_pop_wifi_connected_poppup(essid_name);
+
+       /* Block Network Connected popup for 3sec
+        * to avoid multiple popup's due to ready signals */
+       if (block_network_connected_popup == FALSE) {
+               block_network_connected_popup = TRUE;
+               netconfig_start_timer(3000, _block_network_connection_popup,
+                               NULL, &network_connected_popup_timer_id);
+               __netconfig_pop_wifi_connected_poppup(essid_name);
+       }
 }
 
 static void __unset_wifi_connected_essid(void)
@@ -230,13 +223,13 @@ static gboolean _check_network_notification(gpointer data)
                goto cleanup;
        }
 
-       vconf_get_int(VCONFKEY_WIFI_ENABLE_QS, &qs_enable);
+       netconfig_vconf_get_int(VCONFKEY_WIFI_ENABLE_QS, &qs_enable);
        if (qs_enable != VCONFKEY_WIFI_QS_ENABLE) {
                DBG("qs_enable != VCONFKEY_WIFI_QS_ENABLE");
                goto cleanup;
        }
 
-       vconf_get_int(VCONFKEY_WIFI_UG_RUN_STATE, &ug_state);
+       netconfig_vconf_get_int(VCONFKEY_WIFI_UG_RUN_STATE, &ug_state);
        if (ug_state == VCONFKEY_WIFI_UG_RUN_STATE_ON_FOREGROUND)
                goto cleanup;
 
@@ -287,7 +280,7 @@ static void __notification_value_changed_cb(keynode_t *node, void *user_data)
 {
        int value = -1;
 
-       if (vconf_get_int(VCONFKEY_WIFI_ENABLE_QS, &value) < 0)
+       if (netconfig_vconf_get_int(VCONFKEY_WIFI_ENABLE_QS, &value) < 0)
                return;
 
        if (value == VCONFKEY_WIFI_QS_DISABLE)
@@ -443,7 +436,7 @@ void wifi_state_update_power_state(gboolean powered)
                        netconfig_set_vconf_int(VCONFKEY_WIFI_STATE, VCONFKEY_WIFI_UNCONNECTED);
                        netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_STATE, VCONFKEY_NETWORK_WIFI_NOT_CONNECTED);
 
-                       netconfig_set_system_event(SYS_EVENT_WIFI_STATE, EVT_KEY_WIFI_STATE, EVT_VAL_WIFI_ON);
+                       netconfig_set_system_event(SYS_EVT_WIFI_STATE, EKEY_WIFI_STATE, EVAL_WIFI_ON);
 
                        netconfig_wifi_bgscan_stop();
                        netconfig_wifi_bgscan_start(TRUE);
@@ -467,7 +460,7 @@ void wifi_state_update_power_state(gboolean powered)
                netconfig_set_vconf_int(VCONFKEY_WIFI_STATE, VCONFKEY_WIFI_OFF);
                netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_STATE, VCONFKEY_NETWORK_WIFI_OFF);
 
-               netconfig_set_system_event(SYS_EVENT_WIFI_STATE, EVT_KEY_WIFI_STATE, EVT_VAL_WIFI_OFF);
+               netconfig_set_system_event(SYS_EVT_WIFI_STATE, EKEY_WIFI_STATE, EVAL_WIFI_OFF);
 
                netconfig_wifi_set_bgscan_pause(FALSE);
                netconfig_wifi_bgscan_stop();
@@ -553,7 +546,7 @@ void wifi_state_set_service_state(wifi_service_state_e new_state)
                netconfig_set_vconf_int(VCONFKEY_WIFI_STATE, VCONFKEY_WIFI_CONNECTED);
                netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_STATE, VCONFKEY_NETWORK_WIFI_CONNECTED);
 
-               netconfig_set_system_event(SYS_EVENT_WIFI_STATE, EVT_KEY_WIFI_STATE, EVT_VAL_WIFI_CONNECTED);
+               netconfig_set_system_event(SYS_EVT_WIFI_STATE, EKEY_WIFI_STATE, EVAL_WIFI_CONNECTED);
 
                __set_wifi_connected_essid();
 
@@ -566,7 +559,7 @@ void wifi_state_set_service_state(wifi_service_state_e new_state)
                netconfig_set_vconf_int (VCONFKEY_WIFI_STATE, VCONFKEY_WIFI_UNCONNECTED);
                netconfig_set_vconf_int(VCONFKEY_NETWORK_WIFI_STATE, VCONFKEY_NETWORK_WIFI_NOT_CONNECTED);
 
-               netconfig_set_system_event(SYS_EVENT_WIFI_STATE, EVT_KEY_WIFI_STATE, EVT_VAL_WIFI_ON);
+               netconfig_set_system_event(SYS_EVT_WIFI_STATE, EKEY_WIFI_STATE, EVAL_WIFI_ON);
 
                netconfig_wifi_indicator_stop();
 
@@ -585,12 +578,8 @@ void wifi_state_set_service_state(wifi_service_state_e new_state)
 
        _wifi_state_changed(new_state);
 
-       if (new_state == NETCONFIG_WIFI_CONNECTED) {
+       if (new_state == NETCONFIG_WIFI_CONNECTED)
                _wifi_state_connected_activation();
-#if defined TIZEN_WEARABLE
-               wc_launch_syspopup(WC_POPUP_TYPE_WIFI_CONNECTED);
-#endif
-       }
 }
 
 wifi_service_state_e wifi_state_get_service_state(void)
@@ -677,9 +666,6 @@ wifi_tech_state_e wifi_state_get_technology_state(void)
 void wifi_state_set_connected_essid(void)
 {
        __set_wifi_connected_essid();
-#if defined TIZEN_WEARABLE
-       wc_launch_syspopup(WC_POPUP_TYPE_WIFI_CONNECTED);
-#endif
 }
 
 void wifi_state_get_connected_essid(gchar **essid)