Better messaging when Wi-Fi disabled.

Bug: 6443166
Change-Id: I262e559e5c209d3f1959d5d2ab9a2aebb8180c59
This commit is contained in:
Jeff Sharkey
2012-05-04 10:26:46 -07:00
parent d86d44b745
commit 37c222fdf0
3 changed files with 16 additions and 5 deletions

View File

@@ -3784,6 +3784,8 @@
<string name="data_usage_metered_mobile">Mobile networks</string> <string name="data_usage_metered_mobile">Mobile networks</string>
<!-- Header for list of Wi-Fi networks. [CHAR LIMIT=32] --> <!-- Header for list of Wi-Fi networks. [CHAR LIMIT=32] -->
<string name="data_usage_metered_wifi">Wi-Fi networks</string> <string name="data_usage_metered_wifi">Wi-Fi networks</string>
<!-- Body text prompting user to enable Wi-Fi to configure metered networks. [CHAR LIMIT=64] -->
<string name="data_usage_metered_wifi_disabled">To select metered Wi-Fi networks, turn Wi-Fi on.</string>
<!-- Button at the bottom of the CryptKeeper screen to make an emergency call. --> <!-- Button at the bottom of the CryptKeeper screen to make an emergency call. -->
<string name="cryptkeeper_emergency_call">Emergency call</string> <string name="cryptkeeper_emergency_call">Emergency call</string>

View File

@@ -29,6 +29,14 @@
<PreferenceCategory <PreferenceCategory
android:key="wifi" android:key="wifi"
android:title="@string/data_usage_metered_wifi" android:title="@string/data_usage_metered_wifi"
android:persistent="false" /> android:persistent="false">
<Preference
android:key="wifi_disabled"
android:summary="@string/data_usage_metered_wifi_disabled"
android:persistent="false"
android:selectable="false" />
</PreferenceCategory>
</PreferenceScreen> </PreferenceScreen>

View File

@@ -48,6 +48,7 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment {
private PreferenceCategory mMobileCategory; private PreferenceCategory mMobileCategory;
private PreferenceCategory mWifiCategory; private PreferenceCategory mWifiCategory;
private Preference mWifiDisabled;
@Override @Override
public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) {
@@ -63,9 +64,9 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment {
addPreferencesFromResource(R.xml.data_usage_metered_prefs); addPreferencesFromResource(R.xml.data_usage_metered_prefs);
mMobileCategory = (PreferenceCategory) findPreference("mobile"); mMobileCategory = (PreferenceCategory) findPreference("mobile");
mWifiCategory = (PreferenceCategory) findPreference("wifi"); mWifiCategory = (PreferenceCategory) findPreference("wifi");
mWifiDisabled = findPreference("wifi_disabled");
updateNetworks(context); updateNetworks(context);
} }
private void updateNetworks(Context context) { private void updateNetworks(Context context) {
@@ -76,15 +77,15 @@ public class DataUsageMeteredSettings extends SettingsPreferenceFragment {
getPreferenceScreen().removePreference(mMobileCategory); getPreferenceScreen().removePreference(mMobileCategory);
} }
if (hasWifiRadio(context)) { mWifiCategory.removeAll();
mWifiCategory.removeAll(); if (hasWifiRadio(context) && mWifiManager.isWifiEnabled()) {
for (WifiConfiguration config : mWifiManager.getConfiguredNetworks()) { for (WifiConfiguration config : mWifiManager.getConfiguredNetworks()) {
if (config.SSID != null) { if (config.SSID != null) {
mWifiCategory.addPreference(buildWifiPref(context, config)); mWifiCategory.addPreference(buildWifiPref(context, config));
} }
} }
} else { } else {
getPreferenceScreen().removePreference(mWifiCategory); mWifiCategory.addPreference(mWifiDisabled);
} }
} }