diff --git a/src/com/android/settings/users/MultiUserSwitchBarController.java b/src/com/android/settings/users/MultiUserSwitchBarController.java index 07c03d716c3..1d641418714 100644 --- a/src/com/android/settings/users/MultiUserSwitchBarController.java +++ b/src/com/android/settings/users/MultiUserSwitchBarController.java @@ -53,6 +53,12 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw mSwitchBar = switchBar; mListener = listener; mUserCapabilities = UserCapabilities.create(context); + updateState(); + mSwitchBar.setListener(this); + } + + void updateState() { + mUserCapabilities.updateAddUserCapabilities(mContext); mSwitchBar.setChecked(mUserCapabilities.mUserSwitcherEnabled); if (Flags.fixDisablingOfMuToggleWhenRestrictionApplied()) { @@ -74,7 +80,6 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw mSwitchBar.setEnabled(mUserCapabilities.mIsMain); } } - mSwitchBar.setListener(this); } @Override @@ -92,7 +97,7 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw Log.d(TAG, "Toggling multi-user feature enabled state to: " + isChecked); final boolean success = Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.USER_SWITCHER_ENABLED, isChecked ? 1 : 0); - if (success && mListener != null) { + if (success && mListener != null && !Flags.newMultiuserSettingsUx()) { mListener.onMultiUserSwitchChanged(isChecked); } return success; diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java index c387d9e461d..a0137df728f 100644 --- a/src/com/android/settings/users/UserSettings.java +++ b/src/com/android/settings/users/UserSettings.java @@ -419,6 +419,7 @@ public class UserSettings extends SettingsPreferenceFragment mTimeoutToDockUserPreferenceController.getPreferenceKey())); mRemoveGuestOnExitPreferenceController.updateState(screen.findPreference( mRemoveGuestOnExitPreferenceController.getPreferenceKey())); + mSwitchBarController.updateState(); if (mShouldUpdateUserList) { updateUI(); }