WifiSettings: tweak the order of calls to registerReceiver() to make the UI better.
This commit is contained in:
@@ -58,18 +58,12 @@ public class WifiEnabler implements Preference.OnPreferenceChangeListener {
|
|||||||
};
|
};
|
||||||
|
|
||||||
public WifiEnabler(Context context, CheckBoxPreference checkBox) {
|
public WifiEnabler(Context context, CheckBoxPreference checkBox) {
|
||||||
this(context, (WifiManager) context.getSystemService(Context.WIFI_SERVICE),
|
|
||||||
checkBox);
|
|
||||||
}
|
|
||||||
|
|
||||||
public WifiEnabler(Context context, WifiManager wifiManager,
|
|
||||||
CheckBoxPreference checkBox) {
|
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mCheckBox = checkBox;
|
mCheckBox = checkBox;
|
||||||
mWifiManager = wifiManager;
|
|
||||||
mOriginalSummary = checkBox.getSummary();
|
mOriginalSummary = checkBox.getSummary();
|
||||||
checkBox.setPersistent(false);
|
checkBox.setPersistent(false);
|
||||||
|
|
||||||
|
mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
|
||||||
mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
|
mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
|
||||||
// The order matters! We really should not depend on this. :(
|
// The order matters! We really should not depend on this. :(
|
||||||
mIntentFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
|
mIntentFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
|
||||||
|
@@ -110,7 +110,7 @@ public class WifiSettings extends PreferenceActivity implements DialogInterface.
|
|||||||
addPreferencesFromResource(R.xml.wifi_access_points);
|
addPreferencesFromResource(R.xml.wifi_access_points);
|
||||||
} else {
|
} else {
|
||||||
addPreferencesFromResource(R.xml.wifi_settings);
|
addPreferencesFromResource(R.xml.wifi_settings);
|
||||||
mWifiEnabler = new WifiEnabler(this, mWifiManager,
|
mWifiEnabler = new WifiEnabler(this,
|
||||||
(CheckBoxPreference) findPreference("enable_wifi"));
|
(CheckBoxPreference) findPreference("enable_wifi"));
|
||||||
mNotifyOpenNetworks =
|
mNotifyOpenNetworks =
|
||||||
(CheckBoxPreference) findPreference("notify_open_networks");
|
(CheckBoxPreference) findPreference("notify_open_networks");
|
||||||
@@ -128,10 +128,10 @@ public class WifiSettings extends PreferenceActivity implements DialogInterface.
|
|||||||
@Override
|
@Override
|
||||||
protected void onResume() {
|
protected void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
registerReceiver(mReceiver, mFilter);
|
|
||||||
if (mWifiEnabler != null) {
|
if (mWifiEnabler != null) {
|
||||||
mWifiEnabler.resume();
|
mWifiEnabler.resume();
|
||||||
}
|
}
|
||||||
|
registerReceiver(mReceiver, mFilter);
|
||||||
if (mKeyStoreNetworkId != -1 && KeyStore.getInstance().test() == KeyStore.NO_ERROR) {
|
if (mKeyStoreNetworkId != -1 && KeyStore.getInstance().test() == KeyStore.NO_ERROR) {
|
||||||
connect(mKeyStoreNetworkId);
|
connect(mKeyStoreNetworkId);
|
||||||
}
|
}
|
||||||
@@ -141,10 +141,10 @@ public class WifiSettings extends PreferenceActivity implements DialogInterface.
|
|||||||
@Override
|
@Override
|
||||||
protected void onPause() {
|
protected void onPause() {
|
||||||
super.onPause();
|
super.onPause();
|
||||||
unregisterReceiver(mReceiver);
|
|
||||||
if (mWifiEnabler != null) {
|
if (mWifiEnabler != null) {
|
||||||
mWifiEnabler.pause();
|
mWifiEnabler.pause();
|
||||||
}
|
}
|
||||||
|
unregisterReceiver(mReceiver);
|
||||||
mScanner.pause();
|
mScanner.pause();
|
||||||
if (mDialog != null) {
|
if (mDialog != null) {
|
||||||
mDialog.dismiss();
|
mDialog.dismiss();
|
||||||
|
Reference in New Issue
Block a user