diff --git a/res/values/arrays.xml b/res/values/arrays.xml
index 17a16692915..8c7ebfc96c4 100644
--- a/res/values/arrays.xml
+++ b/res/values/arrays.xml
@@ -237,6 +237,10 @@
- Disconnected
- Unsuccessful
+
+ - Blocked
+
+ - Temporarily avoiding poor connection
@@ -262,6 +266,10 @@
- Disconnected
- Unsuccessful
+
+ - Blocked
+
+ - Temporarily avoiding poor connection
diff --git a/src/com/android/settings/wifi/AdvancedWifiSettings.java b/src/com/android/settings/wifi/AdvancedWifiSettings.java
index c213512bbe0..5d673c454ee 100644
--- a/src/com/android/settings/wifi/AdvancedWifiSettings.java
+++ b/src/com/android/settings/wifi/AdvancedWifiSettings.java
@@ -77,10 +77,7 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
(CheckBoxPreference) findPreference(KEY_ENABLE_WIFI_WATCHDOG);
if (watchdogEnabled != null) {
watchdogEnabled.setChecked(Secure.getInt(getContentResolver(),
- Secure.WIFI_WATCHDOG_ON, 1) == 1);
-
- //TODO: Bring this back after changing watchdog behavior
- getPreferenceScreen().removePreference(watchdogEnabled);
+ Secure.WIFI_WATCHDOG_POOR_NETWORK_TEST_ENABLED, 1) == 1);
}
ListPreference frequencyPref = (ListPreference) findPreference(KEY_FREQUENCY_BAND);
@@ -145,7 +142,7 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
((CheckBoxPreference) preference).isChecked() ? 1 : 0);
} else if (KEY_ENABLE_WIFI_WATCHDOG.equals(key)) {
Secure.putInt(getContentResolver(),
- Secure.WIFI_WATCHDOG_ON,
+ Secure.WIFI_WATCHDOG_POOR_NETWORK_TEST_ENABLED,
((CheckBoxPreference) preference).isChecked() ? 1 : 0);
} else {
return super.onPreferenceTreeClick(screen, preference);
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 22ba3bd7c47..cf53ac56c73 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -565,9 +565,10 @@ public class WifiSettings extends SettingsPreferenceFragment
//network state change events so the apps dont have to worry about
//ignoring supplicant state change when network is connected
//to get more fine grained information.
- if (!mConnected.get()) {
- updateConnectionState(WifiInfo.getDetailedStateOf((SupplicantState)
- intent.getParcelableExtra(WifiManager.EXTRA_NEW_STATE)));
+ SupplicantState state = (SupplicantState) intent.getParcelableExtra(
+ WifiManager.EXTRA_NEW_STATE);
+ if (!mConnected.get() && SupplicantState.isHandshakeState(state)) {
+ updateConnectionState(WifiInfo.getDetailedStateOf(state));
}
if (mInXlSetupWizard) {