Always displays an option for starting a guest session in the full screen switcher.

If guest is already in the foreground, switcher will just get dimissed upon
the selection of starting a new guest session.

Change-Id: Ia79325a1583f00f35e32e30813163a208acfa0b5
Fixes: 111999338
Fixes: 111453367
Test: Manual in emulator while being logged in as Guest and interacting with the switcher.
This commit is contained in:
jovanak
2018-07-31 10:44:41 -07:00
committed by Jovana Knezevic
parent 6941602616
commit 2d26ae3cc7
3 changed files with 13 additions and 14 deletions

View File

@@ -19,7 +19,9 @@
<resources>
<!-- Name of Guest Profile. [CHAR LIMIT=30] -->
<string name="car_guest">Guest</string>
<!-- Name of Add User Profile. [CHAR LIMIT=30] -->
<!-- Title for button that starts a guest session. [CHAR LIMIT=30] -->
<string name="start_guest_session">Guest</string>
<!-- Title for button that adds a new user. [CHAR LIMIT=30] -->
<string name="car_add_user">Add User</string>
<!-- Default name of the new user created. [CHAR LIMIT=30] -->
<string name="car_new_user">New User</string>

View File

@@ -101,7 +101,8 @@ public class FullscreenUserSwitcher {
hideUserGrid();
}
if (record.mIsForeground) {
if (record.mIsForeground || (record.mIsStartGuestSession
&& mUserManagerHelper.foregroundUserIsGuestUser())) {
dismissKeyguard();
return;
}

View File

@@ -109,14 +109,12 @@ public class UserGridRecyclerView extends PagedListView implements
userRecords.add(record);
}
// Add guest user record if the foreground user is not a guest
if (!mUserManagerHelper.foregroundUserIsGuestUser()) {
userRecords.add(addGuestUserRecord());
}
// Add button for starting guest session.
userRecords.add(createStartGuestUserRecord());
// Add add user record if the foreground user can add users
if (mUserManagerHelper.foregroundUserCanAddUsers()) {
userRecords.add(addUserRecord());
userRecords.add(createAddUserRecord());
}
return userRecords;
@@ -125,17 +123,17 @@ public class UserGridRecyclerView extends PagedListView implements
/**
* Create guest user record
*/
private UserRecord addGuestUserRecord() {
private UserRecord createStartGuestUserRecord() {
UserInfo userInfo = new UserInfo();
userInfo.name = mContext.getString(R.string.car_guest);
return new UserRecord(userInfo, true /* isStartGuestSession */,
false /* isAddUser */, false /* isForeground */);
userInfo.name = mContext.getString(R.string.start_guest_session);
return new UserRecord(userInfo, true /* isStartGuestSession */, false /* isAddUser */,
false /* isForeground */);
}
/**
* Create add user record
*/
private UserRecord addUserRecord() {
private UserRecord createAddUserRecord() {
UserInfo userInfo = new UserInfo();
userInfo.name = mContext.getString(R.string.car_add_user);
return new UserRecord(userInfo, false /* isStartGuestSession */,
@@ -210,8 +208,6 @@ public class UserGridRecyclerView extends PagedListView implements
return;
}
// If the user selects Guest, start the guest session.
if (userRecord.mIsStartGuestSession) {
notifyUserSelected(userRecord);
mUserManagerHelper.startNewGuestSession(mGuestName);