summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/wifi/AdvancedWifiSettings.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings/wifi/AdvancedWifiSettings.java')
-rw-r--r--src/com/android/settings/wifi/AdvancedWifiSettings.java38
1 files changed, 16 insertions, 22 deletions
diff --git a/src/com/android/settings/wifi/AdvancedWifiSettings.java b/src/com/android/settings/wifi/AdvancedWifiSettings.java
index f764dd4..b933a28 100644
--- a/src/com/android/settings/wifi/AdvancedWifiSettings.java
+++ b/src/com/android/settings/wifi/AdvancedWifiSettings.java
@@ -60,7 +60,6 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
private static final String KEY_COUNTRY_CODE = "wifi_countrycode";
private static final String KEY_NOTIFY_OPEN_NETWORKS = "notify_open_networks";
private static final String KEY_SLEEP_POLICY = "sleep_policy";
- private static final String KEY_POOR_NETWORK_DETECTION = "wifi_poor_network_detection";
private static final String KEY_INSTALL_CREDENTIALS = "install_credentials";
private static final String KEY_WIFI_ASSISTANT = "wifi_assistant";
private static final String KEY_WIFI_DIRECT = "wifi_direct";
@@ -71,6 +70,9 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
private NetworkScoreManager mNetworkScoreManager;
private AppListSwitchPreference mWifiAssistantPreference;
+ private Preference mWpsPushPref;
+ private Preference mWpsPinPref;
+
private IntentFilter mFilter;
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
@@ -79,6 +81,11 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
if (action.equals(WifiManager.LINK_CONFIGURATION_CHANGED_ACTION) ||
action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {
refreshWifiInfo();
+ } else if (action.equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {
+ int state = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE,
+ WifiManager.WIFI_STATE_UNKNOWN);
+ mWpsPushPref.setEnabled(WifiManager.WIFI_STATE_ENABLED == state);
+ mWpsPinPref.setEnabled(WifiManager.WIFI_STATE_ENABLED == state);
}
}
};
@@ -101,6 +108,7 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
mFilter = new IntentFilter();
mFilter.addAction(WifiManager.LINK_CONFIGURATION_CHANGED_ACTION);
mFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
+ mFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
mNetworkScoreManager =
(NetworkScoreManager) getSystemService(Context.NETWORK_SCORE_SERVICE);
}
@@ -126,19 +134,6 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, 0) == 1);
notifyOpenNetworks.setEnabled(mWifiManager.isWifiEnabled());
- SwitchPreference poorNetworkDetection =
- (SwitchPreference) findPreference(KEY_POOR_NETWORK_DETECTION);
- if (poorNetworkDetection != null) {
- if (Utils.isWifiOnly(getActivity())) {
- getPreferenceScreen().removePreference(poorNetworkDetection);
- } else {
- poorNetworkDetection.setChecked(Settings.Global.getInt(getContentResolver(),
- Settings.Global.WIFI_WATCHDOG_POOR_NETWORK_TEST_ENABLED,
- WifiManager.DEFAULT_POOR_NETWORK_AVOIDANCE_ENABLED ?
- 1 : 0) == 1);
- }
- }
-
Intent intent = new Intent(Credentials.INSTALL_AS_USER_ACTION);
intent.setClassName("com.android.certinstaller",
"com.android.certinstaller.CertInstallerMain");
@@ -162,25 +157,28 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
Preference wifiDirectPref = findPreference(KEY_WIFI_DIRECT);
wifiDirectPref.setIntent(wifiDirectIntent);
+ final int wifiState = mWifiManager.getWifiState();
// WpsDialog: Create the dialog like WifiSettings does.
- Preference wpsPushPref = findPreference(KEY_WPS_PUSH);
- wpsPushPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
+ mWpsPushPref = findPreference(KEY_WPS_PUSH);
+ mWpsPushPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference arg0) {
WpsFragment wpsFragment = new WpsFragment(WpsInfo.PBC);
wpsFragment.show(getFragmentManager(), KEY_WPS_PUSH);
return true;
}
});
+ mWpsPushPref.setEnabled(WifiManager.WIFI_STATE_ENABLED == wifiState);
// WpsDialog: Create the dialog like WifiSettings does.
- Preference wpsPinPref = findPreference(KEY_WPS_PIN);
- wpsPinPref.setOnPreferenceClickListener(new OnPreferenceClickListener(){
+ mWpsPinPref = findPreference(KEY_WPS_PIN);
+ mWpsPinPref.setOnPreferenceClickListener(new OnPreferenceClickListener(){
public boolean onPreferenceClick(Preference arg0) {
WpsFragment wpsFragment = new WpsFragment(WpsInfo.DISPLAY);
wpsFragment.show(getFragmentManager(), KEY_WPS_PIN);
return true;
}
});
+ mWpsPinPref.setEnabled(WifiManager.WIFI_STATE_ENABLED == wifiState);
ListPreference frequencyPref = (ListPreference) findPreference(KEY_FREQUENCY_BAND);
@@ -277,10 +275,6 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment
Global.putInt(getContentResolver(),
Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,
((SwitchPreference) preference).isChecked() ? 1 : 0);
- } else if (KEY_POOR_NETWORK_DETECTION.equals(key)) {
- Global.putInt(getContentResolver(),
- Global.WIFI_WATCHDOG_POOR_NETWORK_TEST_ENABLED,
- ((SwitchPreference) preference).isChecked() ? 1 : 0);
} else {
return super.onPreferenceTreeClick(screen, preference);
}