Merge "Add intent filter to open premium sms setting."
diff --git a/src/com/android/settings/deviceinfo/hardwareinfo/HardwareRevisionPreferenceController.java b/src/com/android/settings/deviceinfo/hardwareinfo/HardwareRevisionPreferenceController.java
index 955c60c..e5fd3da 100644
--- a/src/com/android/settings/deviceinfo/hardwareinfo/HardwareRevisionPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/hardwareinfo/HardwareRevisionPreferenceController.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.os.SystemProperties;
+import android.text.TextUtils;
 
 import com.android.settings.R;
 import com.android.settings.core.BasePreferenceController;
@@ -31,8 +32,8 @@
 
     @Override
     public int getAvailabilityStatus() {
-        return mContext.getResources().getBoolean(R.bool.config_show_device_model)
-                ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
+        return mContext.getResources().getBoolean(R.bool.config_show_device_model) &&
+                !TextUtils.isEmpty(getSummary()) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
     }
 
     @Override
diff --git a/src/com/android/settings/network/MobilePlanPreferenceController.java b/src/com/android/settings/network/MobilePlanPreferenceController.java
index 255dfcd..b4135b8 100644
--- a/src/com/android/settings/network/MobilePlanPreferenceController.java
+++ b/src/com/android/settings/network/MobilePlanPreferenceController.java
@@ -145,7 +145,7 @@
             }
 
             // Get provisioning URL
-            String url = mCm.getMobileProvisioningUrl();
+            String url = mTm.getMobileProvisioningUrl();
             if (!TextUtils.isEmpty(url)) {
                 Intent intent = Intent.makeMainSelectorActivity(Intent.ACTION_MAIN,
                         Intent.CATEGORY_APP_BROWSER);
diff --git a/src/com/android/settings/notification/zen/AbstractZenModePreferenceController.java b/src/com/android/settings/notification/zen/AbstractZenModePreferenceController.java
index 6fa446b..02e4015 100644
--- a/src/com/android/settings/notification/zen/AbstractZenModePreferenceController.java
+++ b/src/com/android/settings/notification/zen/AbstractZenModePreferenceController.java
@@ -84,7 +84,10 @@
         mScreen = screen;
         Preference pref = screen.findPreference(KEY);
         if (pref != null) {
-            mSettingObserver = new SettingObserver(pref);
+            if (mSettingObserver == null) {
+                mSettingObserver = new SettingObserver();
+            }
+            mSettingObserver.setPreference(pref);
         }
     }
 
@@ -128,10 +131,13 @@
         private final Uri ZEN_MODE_DURATION_URI = Settings.Secure.getUriFor(
                 Settings.Secure.ZEN_DURATION);
 
-        private final Preference mPreference;
+        private Preference mPreference;
 
-        public SettingObserver(Preference preference) {
+        public SettingObserver() {
             super(new Handler());
+        }
+
+        public void setPreference(Preference preference) {
             mPreference = preference;
         }