diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java index 5b2729af414..4038dc81e12 100644 --- a/src/com/android/settings/users/UserSettings.java +++ b/src/com/android/settings/users/UserSettings.java @@ -280,7 +280,7 @@ public class UserSettings extends SettingsPreferenceFragment final SettingsActivity activity = (SettingsActivity) getActivity(); final SettingsMainSwitchBar switchBar = activity.getSwitchBar(); switchBar.setTitle(getContext().getString(R.string.multiple_users_main_switch_title)); - if (mUserCaps.mIsAdmin) { + if (isCurrentUserAdmin()) { switchBar.show(); } else { switchBar.hide(); @@ -359,7 +359,7 @@ public class UserSettings extends SettingsPreferenceFragment mMePreference = new UserPreference(getPrefContext(), null /* attrs */, myUserId); mMePreference.setKey(KEY_USER_ME); mMePreference.setOnPreferenceClickListener(this); - if (mUserCaps.mIsAdmin) { + if (isCurrentUserAdmin()) { mMePreference.setSummary(R.string.user_admin); } @@ -450,10 +450,7 @@ public class UserSettings extends SettingsPreferenceFragment @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { int pos = 0; - // TODO(b/191509236): The menu item does not need to be accessible for guest users, - // regardless of mGuestUserAutoCreated - if (!mUserCaps.mIsAdmin && canSwitchUserNow() && !(isCurrentUserGuest() - && mGuestUserAutoCreated)) { + if (!isCurrentUserAdmin() && canSwitchUserNow() && !isCurrentUserGuest()) { String nickname = mUserManager.getUserName(); MenuItem removeThisUser = menu.add(0, MENU_REMOVE_USER, pos++, getResources().getString(R.string.user_remove_user_menu, nickname)); @@ -1217,12 +1214,12 @@ public class UserSettings extends SettingsPreferenceFragment // don't show the guest user icon, instead we show two preferences for guest user to // exit and reset itself. Hence we don't add mMePreference, i.e. guest user to the // list of users visible in the UI. - if (!mUserCaps.mIsGuest) { + if (!isCurrentUserGuest()) { userPreferences.add(mMePreference); } boolean canOpenUserDetails = - mUserCaps.mIsAdmin || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser); + isCurrentUserAdmin() || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser); for (UserInfo user : users) { if (user.isGuest()) { // Guest user is added to guest category via updateGuestCategory @@ -1347,6 +1344,10 @@ public class UserSettings extends SettingsPreferenceFragment return mUserCaps.mIsGuest; } + private boolean isCurrentUserAdmin() { + return mUserCaps.mIsAdmin; + } + private boolean canSwitchUserNow() { return mUserManager.getUserSwitchability() == UserManager.SWITCHABILITY_STATUS_OK; } @@ -1402,7 +1403,7 @@ public class UserSettings extends SettingsPreferenceFragment UserPreference pref = null; boolean isGuestAlreadyCreated = false; boolean canOpenUserDetails = - mUserCaps.mIsAdmin || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser); + isCurrentUserAdmin() || (canSwitchUserNow() && !mUserCaps.mDisallowSwitchUser); mGuestUserCategory.removeAll(); mGuestUserCategory.setVisible(false); @@ -1454,7 +1455,7 @@ public class UserSettings extends SettingsPreferenceFragment // "reset guest on exit" preference is shown hence also make guest category visible mGuestUserCategory.setVisible(true); } - if (mUserCaps.mIsGuest) { + if (isCurrentUserGuest()) { // guest category is not visible for guest user. mGuestUserCategory.setVisible(false); }