WifiSettings: tweak the order of calls to registerReceiver() to make the UI better.
diff --git a/src/com/android/settings/wifi/WifiEnabler.java b/src/com/android/settings/wifi/WifiEnabler.java
index 7ede80d..6c55136 100644
--- a/src/com/android/settings/wifi/WifiEnabler.java
+++ b/src/com/android/settings/wifi/WifiEnabler.java
@@ -58,18 +58,12 @@
     };
 
     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;
         mCheckBox = checkBox;
-        mWifiManager = wifiManager;
         mOriginalSummary = checkBox.getSummary();
         checkBox.setPersistent(false);
-        
+
+        mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
         mIntentFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
         // The order matters! We really should not depend on this. :(
         mIntentFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 25b1cdc..ed170f4 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -110,7 +110,7 @@
             addPreferencesFromResource(R.xml.wifi_access_points);
         } else {
             addPreferencesFromResource(R.xml.wifi_settings);
-            mWifiEnabler = new WifiEnabler(this, mWifiManager,
+            mWifiEnabler = new WifiEnabler(this,
                     (CheckBoxPreference) findPreference("enable_wifi"));
             mNotifyOpenNetworks =
                     (CheckBoxPreference) findPreference("notify_open_networks");
@@ -128,10 +128,10 @@
     @Override
     protected void onResume() {
         super.onResume();
-        registerReceiver(mReceiver, mFilter);
         if (mWifiEnabler != null) {
             mWifiEnabler.resume();
         }
+        registerReceiver(mReceiver, mFilter);
         if (mKeyStoreNetworkId != -1 && KeyStore.getInstance().test() == KeyStore.NO_ERROR) {
             connect(mKeyStoreNetworkId);
         }
@@ -141,10 +141,10 @@
     @Override
     protected void onPause() {
         super.onPause();
-        unregisterReceiver(mReceiver);
         if (mWifiEnabler != null) {
             mWifiEnabler.pause();
         }
+        unregisterReceiver(mReceiver);
         mScanner.pause();
         if (mDialog != null) {
             mDialog.dismiss();