DO NOT MERGE - Allow FR in carrier demo mode
am: bb6859ca75
Change-Id: Ie0ff34a0b8a429caa5119c8bbc42de7b24f3b9ce
This commit is contained in:
@@ -286,11 +286,13 @@ public class MasterClear extends OptionsMenuFragment {
|
||||
@Override
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
||||
Bundle savedInstanceState) {
|
||||
final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(
|
||||
getActivity(), UserManager.DISALLOW_FACTORY_RESET, UserHandle.myUserId());
|
||||
final UserManager um = UserManager.get(getActivity());
|
||||
if (!um.isAdminUser() || RestrictedLockUtils.hasBaseUserRestriction(getActivity(),
|
||||
UserManager.DISALLOW_FACTORY_RESET, UserHandle.myUserId())) {
|
||||
final Context context = getContext();
|
||||
final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(context,
|
||||
UserManager.DISALLOW_FACTORY_RESET, UserHandle.myUserId());
|
||||
final UserManager um = UserManager.get(context);
|
||||
final boolean disallow = !um.isAdminUser() || RestrictedLockUtils.hasBaseUserRestriction(
|
||||
context, UserManager.DISALLOW_FACTORY_RESET, UserHandle.myUserId());
|
||||
if (disallow && !Utils.isCarrierDemoUser(context)) {
|
||||
return inflater.inflate(R.layout.master_clear_disallowed_screen, null);
|
||||
} else if (admin != null) {
|
||||
View view = inflater.inflate(R.layout.admin_support_details_empty_view, null);
|
||||
|
@@ -1139,7 +1139,8 @@ public class SettingsActivity extends SettingsDrawerActivity
|
||||
}
|
||||
}
|
||||
setTileEnabled(new ComponentName(packageName,
|
||||
BackupSettingsActivity.class.getName()), hasBackupActivity, isAdmin, pm);
|
||||
BackupSettingsActivity.class.getName()), hasBackupActivity,
|
||||
isAdmin || Utils.isCarrierDemoUser(this), pm);
|
||||
|
||||
}
|
||||
|
||||
|
@@ -1207,4 +1207,13 @@ public final class Utils extends com.android.settingslib.Utils {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public static boolean isCarrierDemoUser(Context context) {
|
||||
final String carrierDemoModeSetting =
|
||||
context.getString(com.android.internal.R.string.config_carrierDemoModeSetting);
|
||||
return UserManager.isDeviceInDemoMode(context)
|
||||
&& getUserManager(context).isDemoUser()
|
||||
&& !TextUtils.isEmpty(carrierDemoModeSetting)
|
||||
&& Settings.Secure.getInt(context.getContentResolver(), carrierDemoModeSetting, 0) == 1;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user