Merge "Revert "Disable multiuser toggle when more than 1 user is created"" into main

This commit is contained in:
Tetiana Meronyk
2023-09-08 11:35:30 +00:00
committed by Android (Google) Code Review
3 changed files with 6 additions and 38 deletions

View File

@@ -46,18 +46,13 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw
MultiUserSwitchBarController(Context context, SwitchWidgetController switchBar,
boolean canUserSwitchToggle, OnMultiUserSwitchChangedListener listener) {
OnMultiUserSwitchChangedListener listener) {
mContext = context;
mSwitchBar = switchBar;
mListener = listener;
mUserCapabilities = UserCapabilities.create(context);
mSwitchBar.setChecked(mUserCapabilities.mUserSwitcherEnabled);
setToggleEnabled(canUserSwitchToggle);
mSwitchBar.setListener(this);
}
void setToggleEnabled(boolean canUserSwitchToggle) {
if (mUserCapabilities.mDisallowSwitchUser) {
mSwitchBar.setDisabledByAdmin(RestrictedLockUtilsInternal
.checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_USER_SWITCH,
@@ -69,8 +64,9 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw
UserHandle.myUserId()));
} else {
mSwitchBar.setEnabled(!mUserCapabilities.mDisallowSwitchUser
&& !mUserCapabilities.mIsGuest && canUserSwitchToggle);
&& !mUserCapabilities.mIsGuest && mUserCapabilities.isAdmin());
}
mSwitchBar.setListener(this);
}
@Override

View File

@@ -290,9 +290,8 @@ public class UserSettings extends SettingsPreferenceFragment
} else {
switchBar.hide();
}
boolean isToggleEnabled = mUserManager.getFullUserCount() == 1;
mSwitchBarController = new MultiUserSwitchBarController(activity,
new MainSwitchBarController(switchBar), isToggleEnabled, this /* listener */);
new MainSwitchBarController(switchBar), this /* listener */);
getSettingsLifecycle().addObserver(mSwitchBarController);
boolean openUserEditDialog = getIntent().getBooleanExtra(
EXTRA_OPEN_DIALOG_USER_PROFILE_EDITOR, false);
@@ -423,9 +422,6 @@ public class UserSettings extends SettingsPreferenceFragment
mRemoveGuestOnExitPreferenceController.getPreferenceKey()));
if (mShouldUpdateUserList) {
updateUI();
// Update state of "Allow multiple users" toggle when list of users updates
boolean isToggleEnabled = mUserManager.getFullUserCount() == 1;
mSwitchBarController.setToggleEnabled(isToggleEnabled);
}
}