Loading src/com/android/settings/notification/SoundSettings.java +9 −4 Original line number Diff line number Diff line Loading @@ -169,7 +169,9 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab } catch (IllegalArgumentException ignored) { isCellBroadcastAppLinkEnabled = false; // CMAS app not installed } if (!mUserManager.isAdminUser() || !isCellBroadcastAppLinkEnabled) { if (!mUserManager.isAdminUser() || !isCellBroadcastAppLinkEnabled || RestrictedLockUtils.hasBaseUserRestriction(mContext, UserManager.DISALLOW_CONFIG_CELL_BROADCASTS, UserHandle.myUserId())) { removePreference(KEY_CELL_BROADCAST_SETTINGS); } initRingtones(); Loading @@ -193,12 +195,15 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_ADJUST_VOLUME, UserHandle.myUserId()); final boolean hasBaseRestriction = RestrictedLockUtils.hasBaseUserRestriction(mContext, UserManager.DISALLOW_ADJUST_VOLUME, UserHandle.myUserId()); for (String key : RESTRICTED_KEYS) { Preference pref = findPreference(key); if (pref instanceof RestrictedPreference) { if (pref != null) { pref.setEnabled(!hasBaseRestriction); } if (pref instanceof RestrictedPreference && !hasBaseRestriction) { ((RestrictedPreference) pref).setDisabledByAdmin(admin); } else if (pref != null) { pref.setEnabled(admin == null); } } RestrictedPreference broadcastSettingsPref = (RestrictedPreference) findPreference( Loading src/com/android/settings/users/UserSettings.java +14 −5 Original line number Diff line number Diff line Loading @@ -767,7 +767,9 @@ public class UserSettings extends SettingsPreferenceFragment } // Check if Guest tile should be added. if (!mUserCaps.mIsGuest && (mUserCaps.mCanAddGuest || mUserCaps.mDisallowAddUser)) { if (!mUserCaps.mIsGuest && (mUserCaps.mCanAddGuest || mUserCaps.mDisallowAddUserSetByAdmin)) { // Add a virtual Guest user for guest defaults UserPreference pref = new UserPreference(getPrefContext(), null, UserPreference.USERID_GUEST_DEFAULTS, mUserCaps.mIsAdmin && voiceCapable? this : null /* settings icon handler */, Loading Loading @@ -810,7 +812,7 @@ public class UserSettings extends SettingsPreferenceFragment } // Append Add user to the end of the list if (mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUser) { if (mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin) { boolean moreUsers = mUserManager.canAddMoreUsers(); mAddUser.setOrder(Preference.DEFAULT_ORDER); preferenceScreen.addPreference(mAddUser); Loading @@ -825,7 +827,8 @@ public class UserSettings extends SettingsPreferenceFragment mUserCaps.mDisallowAddUser ? mUserCaps.mEnforcedAdmin : null); } } if (mUserCaps.mIsAdmin) { if (mUserCaps.mIsAdmin && (!mUserCaps.mDisallowAddUser || mUserCaps.mDisallowAddUserSetByAdmin)) { mLockScreenSettings.setOrder(Preference.DEFAULT_ORDER); preferenceScreen.addPreference(mLockScreenSettings); mAddUserWhenLocked.setChecked(Settings.Global.getInt(getContentResolver(), Loading Loading @@ -1006,6 +1009,7 @@ public class UserSettings extends SettingsPreferenceFragment boolean mIsGuest; boolean mCanAddGuest; boolean mDisallowAddUser; boolean mDisallowAddUserSetByAdmin; EnforcedAdmin mEnforcedAdmin; private UserCapabilities() {} Loading @@ -1023,7 +1027,12 @@ public class UserSettings extends SettingsPreferenceFragment caps.mIsAdmin = myUserInfo.isAdmin(); caps.mEnforcedAdmin = RestrictedLockUtils.checkIfRestrictionEnforced(context, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId()); caps.mDisallowAddUser = (caps.mEnforcedAdmin != null); final boolean hasBaseUserRestriction = RestrictedLockUtils.hasBaseUserRestriction( context, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId()); caps.mDisallowAddUserSetByAdmin = caps.mEnforcedAdmin != null && !hasBaseUserRestriction; caps.mDisallowAddUser = (caps.mEnforcedAdmin != null || hasBaseUserRestriction); if (!caps.mIsAdmin || UserManager.getMaxSupportedUsers() < 2 || !UserManager.supportsMultipleUsers() || caps.mDisallowAddUser) { Loading Loading @@ -1103,7 +1112,7 @@ public class UserSettings extends SettingsPreferenceFragment data.screenTitle = res.getString(R.string.user_settings_title); result.add(data); if (userCaps.mCanAddUser || userCaps.mDisallowAddUser) { if (userCaps.mCanAddUser || userCaps.mDisallowAddUserSetByAdmin) { data = new SearchIndexableRaw(context); data.title = res.getString(userCaps.mCanAddRestrictedProfile ? R.string.user_add_user_or_profile_menu Loading Loading
src/com/android/settings/notification/SoundSettings.java +9 −4 Original line number Diff line number Diff line Loading @@ -169,7 +169,9 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab } catch (IllegalArgumentException ignored) { isCellBroadcastAppLinkEnabled = false; // CMAS app not installed } if (!mUserManager.isAdminUser() || !isCellBroadcastAppLinkEnabled) { if (!mUserManager.isAdminUser() || !isCellBroadcastAppLinkEnabled || RestrictedLockUtils.hasBaseUserRestriction(mContext, UserManager.DISALLOW_CONFIG_CELL_BROADCASTS, UserHandle.myUserId())) { removePreference(KEY_CELL_BROADCAST_SETTINGS); } initRingtones(); Loading @@ -193,12 +195,15 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_ADJUST_VOLUME, UserHandle.myUserId()); final boolean hasBaseRestriction = RestrictedLockUtils.hasBaseUserRestriction(mContext, UserManager.DISALLOW_ADJUST_VOLUME, UserHandle.myUserId()); for (String key : RESTRICTED_KEYS) { Preference pref = findPreference(key); if (pref instanceof RestrictedPreference) { if (pref != null) { pref.setEnabled(!hasBaseRestriction); } if (pref instanceof RestrictedPreference && !hasBaseRestriction) { ((RestrictedPreference) pref).setDisabledByAdmin(admin); } else if (pref != null) { pref.setEnabled(admin == null); } } RestrictedPreference broadcastSettingsPref = (RestrictedPreference) findPreference( Loading
src/com/android/settings/users/UserSettings.java +14 −5 Original line number Diff line number Diff line Loading @@ -767,7 +767,9 @@ public class UserSettings extends SettingsPreferenceFragment } // Check if Guest tile should be added. if (!mUserCaps.mIsGuest && (mUserCaps.mCanAddGuest || mUserCaps.mDisallowAddUser)) { if (!mUserCaps.mIsGuest && (mUserCaps.mCanAddGuest || mUserCaps.mDisallowAddUserSetByAdmin)) { // Add a virtual Guest user for guest defaults UserPreference pref = new UserPreference(getPrefContext(), null, UserPreference.USERID_GUEST_DEFAULTS, mUserCaps.mIsAdmin && voiceCapable? this : null /* settings icon handler */, Loading Loading @@ -810,7 +812,7 @@ public class UserSettings extends SettingsPreferenceFragment } // Append Add user to the end of the list if (mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUser) { if (mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin) { boolean moreUsers = mUserManager.canAddMoreUsers(); mAddUser.setOrder(Preference.DEFAULT_ORDER); preferenceScreen.addPreference(mAddUser); Loading @@ -825,7 +827,8 @@ public class UserSettings extends SettingsPreferenceFragment mUserCaps.mDisallowAddUser ? mUserCaps.mEnforcedAdmin : null); } } if (mUserCaps.mIsAdmin) { if (mUserCaps.mIsAdmin && (!mUserCaps.mDisallowAddUser || mUserCaps.mDisallowAddUserSetByAdmin)) { mLockScreenSettings.setOrder(Preference.DEFAULT_ORDER); preferenceScreen.addPreference(mLockScreenSettings); mAddUserWhenLocked.setChecked(Settings.Global.getInt(getContentResolver(), Loading Loading @@ -1006,6 +1009,7 @@ public class UserSettings extends SettingsPreferenceFragment boolean mIsGuest; boolean mCanAddGuest; boolean mDisallowAddUser; boolean mDisallowAddUserSetByAdmin; EnforcedAdmin mEnforcedAdmin; private UserCapabilities() {} Loading @@ -1023,7 +1027,12 @@ public class UserSettings extends SettingsPreferenceFragment caps.mIsAdmin = myUserInfo.isAdmin(); caps.mEnforcedAdmin = RestrictedLockUtils.checkIfRestrictionEnforced(context, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId()); caps.mDisallowAddUser = (caps.mEnforcedAdmin != null); final boolean hasBaseUserRestriction = RestrictedLockUtils.hasBaseUserRestriction( context, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId()); caps.mDisallowAddUserSetByAdmin = caps.mEnforcedAdmin != null && !hasBaseUserRestriction; caps.mDisallowAddUser = (caps.mEnforcedAdmin != null || hasBaseUserRestriction); if (!caps.mIsAdmin || UserManager.getMaxSupportedUsers() < 2 || !UserManager.supportsMultipleUsers() || caps.mDisallowAddUser) { Loading Loading @@ -1103,7 +1112,7 @@ public class UserSettings extends SettingsPreferenceFragment data.screenTitle = res.getString(R.string.user_settings_title); result.add(data); if (userCaps.mCanAddUser || userCaps.mDisallowAddUser) { if (userCaps.mCanAddUser || userCaps.mDisallowAddUserSetByAdmin) { data = new SearchIndexableRaw(context); data.title = res.getString(userCaps.mCanAddRestrictedProfile ? R.string.user_add_user_or_profile_menu Loading