WifiSettings: enable all networks only when connected, disconnected, or failed.
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 5b1ca04..e06dcd4 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -25,6 +25,7 @@
import android.content.Intent;
import android.content.IntentFilter;
import android.net.NetworkInfo;
+import android.net.NetworkInfo.DetailedState;
import android.net.wifi.ScanResult;
import android.net.wifi.SupplicantState;
import android.net.wifi.WifiConfiguration;
@@ -71,7 +72,7 @@
private ProgressCategory mAccessPoints;
private Preference mAddNetwork;
- private NetworkInfo.DetailedState mLastState;
+ private DetailedState mLastState;
private WifiInfo mLastInfo;
private int mLastPriority;
@@ -426,8 +427,8 @@
}
}
- private void updateConnectionState(NetworkInfo.DetailedState state) {
- if (state == NetworkInfo.DetailedState.OBTAINING_IPADDR) {
+ private void updateConnectionState(DetailedState state) {
+ if (state == DetailedState.OBTAINING_IPADDR) {
mScanner.pause();
} else {
mScanner.resume();
@@ -442,7 +443,8 @@
((AccessPoint) mAccessPoints.getPreference(i)).update(mLastInfo, mLastState);
}
- if (mResetNetworks) {
+ if (mResetNetworks && (state == DetailedState.CONNECTED ||
+ state == DetailedState.DISCONNECTED || state == DetailedState.FAILED)) {
enableNetworks();
}
}