[TSAM-9221] Fixed Issue for multiple network connected popup's 05/97305/1
authorMilind Murhekar <m.murhekar@samsung.com>
Thu, 10 Nov 2016 14:17:43 +0000 (19:47 +0530)
committerchleun.moon <chleun.moon@samsung.com>
Mon, 14 Nov 2016 00:41:59 +0000 (09:41 +0900)
Change-Id: I0ea09f6e1a5ad5594ac2b9da6b8cff1f25571a54
Signed-off-by: cheoleun <chleun.moon@samsung.com>
src/wifi-state.c

index 95618f4..072431f 100755 (executable)
@@ -45,6 +45,8 @@ 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)
 {
@@ -66,6 +68,13 @@ static void __netconfig_pop_wifi_connected_poppup(const char *ssid)
        bundle_free(b);
 }
 
+static gboolean _block_network_connection_popup(gpointer data)
+{
+       block_network_connected_popup = FALSE;
+       netconfig_stop_timer(&network_connected_popup_timer_id);
+       return FALSE;
+}
+
 static void __set_wifi_connected_essid(void)
 {
        const char *essid_name = NULL;
@@ -87,7 +96,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)