Loading src/com/android/settings/users/MultiUserSwitchBarController.java +5 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,11 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw mSwitchBar.setDisabledByAdmin(RestrictedLockUtilsInternal .checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_USER_SWITCH, UserHandle.myUserId())); } else if (mUserCapabilities.mDisallowAddUser) { mSwitchBar.setDisabledByAdmin(RestrictedLockUtilsInternal .checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId())); } else { mSwitchBar.setEnabled(!mUserCapabilities.mDisallowSwitchUser && !mUserCapabilities.mIsGuest && mUserCapabilities.isAdmin()); Loading src/com/android/settings/users/UserSettings.java +1 −1 Original line number Diff line number Diff line Loading @@ -1489,7 +1489,7 @@ public class UserSettings extends SettingsPreferenceFragment private void updateAddUserCommon(Context context, RestrictedPreference addUser, boolean canAddRestrictedProfile) { if ((mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin) if ((mUserCaps.mCanAddUser || !mUserCaps.mDisallowAddUserSetByAdmin) && WizardManagerHelper.isDeviceProvisioned(context) && mUserCaps.mUserSwitcherEnabled) { addUser.setVisible(true); Loading tests/robotests/src/com/android/settings/users/UserSettingsTest.java +4 −8 Original line number Diff line number Diff line Loading @@ -402,7 +402,7 @@ public class UserSettingsTest { } @Test public void updateUserList_addUserDisallowedByAdmin_shouldShowDisabledAddUser() { public void updateUserList_addUserDisallowedByAdmin_shouldNotShowAddUser() { RestrictedLockUtils.EnforcedAdmin enforcedAdmin = mock( RestrictedLockUtils.EnforcedAdmin.class); mUserCapabilities.mEnforcedAdmin = enforcedAdmin; Loading @@ -413,20 +413,16 @@ public class UserSettingsTest { mFragment.updateUserList(); verify(mAddUserPreference).setVisible(true); ArgumentCaptor<RestrictedLockUtils.EnforcedAdmin> captor = ArgumentCaptor.forClass( RestrictedLockUtils.EnforcedAdmin.class); verify(mAddUserPreference).setDisabledByAdmin(captor.capture()); assertThat(captor.getValue()).isEqualTo(enforcedAdmin); verify(mAddUserPreference).setVisible(false); } @Test public void updateUserList_cannotAddUserButCanSwitchUser_shouldNotShowAddUser() { public void updateUserList_cannotAddUserButCanSwitchUser_shouldShowDisabledAddUser() { mUserCapabilities.mCanAddUser = false; mFragment.updateUserList(); verify(mAddUserPreference).setVisible(false); verify(mAddUserPreference).setEnabled(false); } @Test Loading Loading
src/com/android/settings/users/MultiUserSwitchBarController.java +5 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,11 @@ public class MultiUserSwitchBarController implements SwitchWidgetController.OnSw mSwitchBar.setDisabledByAdmin(RestrictedLockUtilsInternal .checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_USER_SWITCH, UserHandle.myUserId())); } else if (mUserCapabilities.mDisallowAddUser) { mSwitchBar.setDisabledByAdmin(RestrictedLockUtilsInternal .checkIfRestrictionEnforced(mContext, UserManager.DISALLOW_ADD_USER, UserHandle.myUserId())); } else { mSwitchBar.setEnabled(!mUserCapabilities.mDisallowSwitchUser && !mUserCapabilities.mIsGuest && mUserCapabilities.isAdmin()); Loading
src/com/android/settings/users/UserSettings.java +1 −1 Original line number Diff line number Diff line Loading @@ -1489,7 +1489,7 @@ public class UserSettings extends SettingsPreferenceFragment private void updateAddUserCommon(Context context, RestrictedPreference addUser, boolean canAddRestrictedProfile) { if ((mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin) if ((mUserCaps.mCanAddUser || !mUserCaps.mDisallowAddUserSetByAdmin) && WizardManagerHelper.isDeviceProvisioned(context) && mUserCaps.mUserSwitcherEnabled) { addUser.setVisible(true); Loading
tests/robotests/src/com/android/settings/users/UserSettingsTest.java +4 −8 Original line number Diff line number Diff line Loading @@ -402,7 +402,7 @@ public class UserSettingsTest { } @Test public void updateUserList_addUserDisallowedByAdmin_shouldShowDisabledAddUser() { public void updateUserList_addUserDisallowedByAdmin_shouldNotShowAddUser() { RestrictedLockUtils.EnforcedAdmin enforcedAdmin = mock( RestrictedLockUtils.EnforcedAdmin.class); mUserCapabilities.mEnforcedAdmin = enforcedAdmin; Loading @@ -413,20 +413,16 @@ public class UserSettingsTest { mFragment.updateUserList(); verify(mAddUserPreference).setVisible(true); ArgumentCaptor<RestrictedLockUtils.EnforcedAdmin> captor = ArgumentCaptor.forClass( RestrictedLockUtils.EnforcedAdmin.class); verify(mAddUserPreference).setDisabledByAdmin(captor.capture()); assertThat(captor.getValue()).isEqualTo(enforcedAdmin); verify(mAddUserPreference).setVisible(false); } @Test public void updateUserList_cannotAddUserButCanSwitchUser_shouldNotShowAddUser() { public void updateUserList_cannotAddUserButCanSwitchUser_shouldShowDisabledAddUser() { mUserCapabilities.mCanAddUser = false; mFragment.updateUserList(); verify(mAddUserPreference).setVisible(false); verify(mAddUserPreference).setEnabled(false); } @Test Loading