diff --git a/src/com/android/settings/MainClear.java b/src/com/android/settings/MainClear.java index 7b96d42b912..acf25d5b078 100644 --- a/src/com/android/settings/MainClear.java +++ b/src/com/android/settings/MainClear.java @@ -17,6 +17,7 @@ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; +import static android.app.admin.DevicePolicyResources.Strings.Settings.PRIVATE_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; @@ -505,6 +506,9 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis final UserInfo userInfo = profiles.get(profileIndex); final int profileId = userInfo.id; final UserHandle userHandle = new UserHandle(profileId); + if (Utils.shouldHideUser(userHandle, um)) { + continue; + } Account[] accounts = mgr.getAccountsAsUser(profileId); final int accountLength = accounts.length; if (accountLength == 0) { @@ -529,6 +533,13 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis titleText.setText(devicePolicyManager.getResources().getString( WORK_CATEGORY_HEADER, () -> getString( com.android.settingslib.R.string.category_work))); + } else if (android.os.Flags.allowPrivateProfile() + && android.multiuser.Flags.enablePrivateSpaceFeatures() + && android.multiuser.Flags.handleInterleavedSettingsForPrivateSpace() + && userInfo.isPrivateProfile()) { + titleText.setText(devicePolicyManager.getResources().getString( + PRIVATE_CATEGORY_HEADER, () -> getString( + com.android.settingslib.R.string.category_private))); } else { titleText.setText(devicePolicyManager.getResources().getString( PERSONAL_CATEGORY_HEADER, () -> getString( diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java index 6e36ee36733..e68d9f487e4 100644 --- a/src/com/android/settings/Utils.java +++ b/src/com/android/settings/Utils.java @@ -1364,6 +1364,16 @@ public final class Utils extends com.android.settingslib.Utils { } } + /** + * Returns true if the user should be hidden in Settings when it's in quiet mode. + */ + public static boolean shouldHideUser( + @NonNull UserHandle userHandle, @NonNull UserManager userManager) { + UserProperties userProperties = userManager.getUserProperties(userHandle); + return userProperties.getShowInQuietMode() == UserProperties.SHOW_IN_QUIET_MODE_HIDDEN + && userManager.isQuietModeEnabled(userHandle); + } + private static FaceManager.RemovalCallback faceManagerRemovalCallback(int userId) { return new FaceManager.RemovalCallback() { @Override