Allow FR in carrier demo mode

Bug: 62133292
Test: make RunSettingsRoboTests -j100, and manually verified FR is
available in carrier demo mode.

Change-Id: Ia793bf234b229da0490accfea6d44b72395a04bc
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 3e45af7..4045fd2 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -842,8 +842,7 @@
 
         // Enable/disable backup settings depending on whether the user is admin.
         setTileEnabled(new ComponentName(packageName,
-                        BackupSettingsActivity.class.getName()), true,
-                isAdmin || Utils.isCarrierDemoUser(this));
+                        BackupSettingsActivity.class.getName()), true, isAdmin);
 
         setTileEnabled(new ComponentName(packageName,
                         Settings.WifiDisplaySettingsActivity.class.getName()),
diff --git a/src/com/android/settings/system/FactoryResetPreferenceController.java b/src/com/android/settings/system/FactoryResetPreferenceController.java
index 38afd16..a3cf10a 100644
--- a/src/com/android/settings/system/FactoryResetPreferenceController.java
+++ b/src/com/android/settings/system/FactoryResetPreferenceController.java
@@ -24,6 +24,7 @@
 import android.support.v7.preference.Preference;
 
 import com.android.settings.R;
+import com.android.settings.Utils;
 import com.android.settings.core.PreferenceController;
 
 import java.util.List;
@@ -41,10 +42,10 @@
         mAm = (AccountManager) context.getSystemService(Context.ACCOUNT_SERVICE);
     }
 
-    /** Hide "Factory reset" settings for secondary users. */
+    /** Hide "Factory reset" settings for secondary users, except demo users. */
     @Override
     public boolean isAvailable() {
-        return mUm.isAdminUser();
+        return mUm.isAdminUser() || Utils.isCarrierDemoUser(mContext);
     }
 
     @Override