Index: sources/wifi/WifiInterface.cpp =================================================================== diff -u -r6e9dccd1109d9c8d4ee4b6a21260618969a1706b -r74134f8b53c3b71dc91c67ed723db8c29d4d4e69 --- sources/wifi/WifiInterface.cpp (.../WifiInterface.cpp) (revision 6e9dccd1109d9c8d4ee4b6a21260618969a1706b) +++ sources/wifi/WifiInterface.cpp (.../WifiInterface.cpp) (revision 74134f8b53c3b71dc91c67ed723db8c29d4d4e69) @@ -256,7 +256,23 @@ LOG_DEBUG(QString("stderr: %1").arg(err)); _scanRunning = false; emit didScanStatusChanged(_scanRunning); - parseWifiScan(out); + QList networks = parseWifiScan(out); + + // A non-empty macAddress indicates UI is connected to a network + // if the network security type list is empty, this indicates that the connection + // was a result of a start-up reconnection. Traverse through discovered networks + // and update the security type list and signal strength info + if(!_network.macAddress().isEmpty() && _network.securityTypes().isEmpty()) { + foreach(WifiNetworkData network, networks){ + if(network.macAddress() == _network.macAddress()){ + // update the security and signal info + _network.securityTypes(network.securityTypes()); + _network.signalLevel(network.signalLevel()); + emit didConnectToNetwork(_network); + } + } + } + LOG_DEBUG("WiFi Scan Finished"); }