From b0706be4afec65b2f37e9c1e63558f45ac7c8576 Mon Sep 17 00:00:00 2001 From: Tetiana Meronyk Date: Wed, 16 Oct 2024 13:28:54 +0000 Subject: [PATCH] Set availability of AddUserWhenLockedPreference before it gets displayed. This prevents flickering if the preference is meant to be hidden. Bug: 373269781 Test: manual Flag: EXEMPT bugfix Change-Id: Ibf1e1915e9ad872bdaaba30fb7fa9047665531f7 --- .../users/AddUserWhenLockedPreferenceController.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java b/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java index fe90a2a25b8..2dc5b2d60d6 100644 --- a/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java +++ b/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java @@ -46,8 +46,6 @@ public class AddUserWhenLockedPreferenceController extends TogglePreferenceContr restrictedSwitchPreference.setVisible(true); if (mUserCaps.mDisallowAddUserSetByAdmin) { restrictedSwitchPreference.setDisabledByAdmin(mUserCaps.mEnforcedAdmin); - } else if (mUserCaps.mDisallowAddUser) { - restrictedSwitchPreference.setVisible(false); } } else { restrictedSwitchPreference.setDisabledByAdmin( @@ -62,7 +60,11 @@ public class AddUserWhenLockedPreferenceController extends TogglePreferenceContr if (!mUserCaps.isAdmin()) { return DISABLED_FOR_USER; } else if (android.multiuser.Flags.newMultiuserSettingsUx()) { - return AVAILABLE; + if (mUserCaps.mDisallowAddUser && !mUserCaps.mDisallowAddUserSetByAdmin) { + return DISABLED_FOR_USER; + } else { + return AVAILABLE; + } } else if (mUserCaps.disallowAddUser() || mUserCaps.disallowAddUserSetByAdmin()) { return DISABLED_FOR_USER; } else {