Fixed a bug were secure Wi-Fi connections would show unsecured.
- Also removed secure summary code as the UX teams has determined it is
superfluous.
Bug: 16297100
Change-Id: Ib02bc2c0433f5354a8f8cf01f4d8785762a762ad
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f8d5c2c..bfa43a1 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1634,12 +1634,6 @@
<!-- Substring of wifi status when Wi-Fi Protected Setup (WPS) is available and
string is listed after a wifi_secured_* string-->
<string name="wifi_wps_available_second_item">\u0020(WPS available)</string>
- <!-- Substring of wifi status for wifi with authentication. This version is for when the
- string is first in the list (titlecase in english) -->
- <string name="wifi_secured_first_item">Secured with <xliff:g id="wifi_security_short">%1$s</xliff:g></string>
- <!-- Substring of wifi status for wifi with authentication. This version is for when the
- string is not first in the list (lowercase in english) -->
- <string name="wifi_secured_second_item">, secured with <xliff:g id="wifi_security_short">%1$s</xliff:g></string>
<!-- Message in WriteWifiConfigToNfcDialog when prompted to enter network password [CHAR_LIMIT=40] -->
<string name="wifi_wps_nfc_enter_password">Enter your network password</string>
diff --git a/src/com/android/settings/wifi/AccessPoint.java b/src/com/android/settings/wifi/AccessPoint.java
index 0ec1f13..3df4ece 100644
--- a/src/com/android/settings/wifi/AccessPoint.java
+++ b/src/com/android/settings/wifi/AccessPoint.java
@@ -20,6 +20,7 @@
import android.content.Context;
import android.graphics.drawable.Drawable;
+import android.graphics.drawable.StateListDrawable;
import android.net.NetworkInfo.DetailedState;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
@@ -266,14 +267,17 @@
Drawable drawable = getIcon();
if (drawable == null) {
- drawable = context.getTheme().obtainStyledAttributes(
- wifi_signal_attributes).getDrawable(0);
+ // To avoid a drawing race condition, we first set the state (SECURE/NONE) and then
+ // set the icon (drawable) to that state's drawable.
+ StateListDrawable sld = (StateListDrawable) context.getTheme()
+ .obtainStyledAttributes(wifi_signal_attributes).getDrawable(0);
+ sld.setState((security != SECURITY_NONE) ? STATE_SECURED : STATE_NONE);
+ drawable = sld.getCurrent();
setIcon(drawable);
}
if (drawable != null) {
drawable.setLevel(level);
- drawable.setState((security != SECURITY_NONE) ? STATE_SECURED : STATE_NONE);
}
}
}
@@ -554,17 +558,6 @@
if (mConfig != null) { // Is saved network
summary.append(context.getString(R.string.wifi_remembered));
}
-
-// TODO: Wi-Fi team needs to decide what to do with this code.
-// if (security != SECURITY_NONE) {
-// String securityStrFormat;
-// if (summary.length() == 0) {
-// securityStrFormat = context.getString(R.string.wifi_secured_first_item);
-// } else {
-// securityStrFormat = context.getString(R.string.wifi_secured_second_item);
-// }
-// }
-
}
if (WifiSettings.mVerboseLogging > 0) {