summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2015-05-13 10:17:33 -0400
committerJason Monk <jmonk@google.com>2015-05-13 10:17:33 -0400
commit02f0a4aff3349513e69ea6697151c60088f75dcd (patch)
treec49c42c03debbc0c7172d284ef7f34642b71b534 /src
parentf82cd8f4b3a533be352bdcee8cd29b6feb4df868 (diff)
downloadpackages_apps_Settings-02f0a4aff3349513e69ea6697151c60088f75dcd.zip
packages_apps_Settings-02f0a4aff3349513e69ea6697151c60088f75dcd.tar.gz
packages_apps_Settings-02f0a4aff3349513e69ea6697151c60088f75dcd.tar.bz2
Fix connecting to secure wifi from QS
Sometimes the preference isn't created yet, so we need to hold on to the ssid until the preference for that access point gets created. Bug: 20975085 Change-Id: Ib5804611793550106f6059b1afe016de4e89bc64
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/wifi/WifiSettings.java21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 5cb4869..0c28db3 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -147,6 +147,7 @@ public class WifiSettings extends RestrictedSettingsFragment
private Bundle mWifiNfcDialogSavedState;
private WifiTracker mWifiTracker;
+ private String mOpenSsid;
/* End of "used in Wifi Setup context" */
@@ -252,20 +253,8 @@ public class WifiSettings extends RestrictedSettingsFragment
setHasOptionsMenu(true);
if (intent.hasExtra(EXTRA_START_CONNECT_SSID)) {
- String ssid = intent.getStringExtra(EXTRA_START_CONNECT_SSID);
+ mOpenSsid = intent.getStringExtra(EXTRA_START_CONNECT_SSID);
onAccessPointsChanged();
- PreferenceScreen preferenceScreen = getPreferenceScreen();
- for (int i = 0; i < preferenceScreen.getPreferenceCount(); i++) {
- Preference preference = preferenceScreen.getPreference(i);
- if (preference instanceof AccessPointPreference) {
- AccessPoint accessPoint = ((AccessPointPreference) preference).getAccessPoint();
- if (ssid.equals(accessPoint.getSsid()) && !accessPoint.isSaved()
- && accessPoint.getSecurity() != AccessPoint.SECURITY_NONE) {
- onPreferenceTreeClick(preferenceScreen, preference);
- break;
- }
- }
- }
}
}
@@ -642,6 +631,12 @@ public class WifiSettings extends RestrictedSettingsFragment
AccessPointPreference preference = new AccessPointPreference(accessPoint,
getActivity(), false);
+ if (mOpenSsid != null && mOpenSsid.equals(accessPoint.getSsid())
+ && !accessPoint.isSaved()
+ && accessPoint.getSecurity() != AccessPoint.SECURITY_NONE) {
+ onPreferenceTreeClick(getPreferenceScreen(), preference);
+ mOpenSsid = null;
+ }
getPreferenceScreen().addPreference(preference);
accessPoint.setListener(this);
}