| Index: chrome/browser/chromeos/login/screens/user_selection_screen.cc
|
| diff --git a/chrome/browser/chromeos/login/screens/user_selection_screen.cc b/chrome/browser/chromeos/login/screens/user_selection_screen.cc
|
| index 7678705dbb03c1847712689540dfccb20e72c551..e773b70cfff2042be3abd3dda1c1b7faee9cc152 100644
|
| --- a/chrome/browser/chromeos/login/screens/user_selection_screen.cc
|
| +++ b/chrome/browser/chromeos/login/screens/user_selection_screen.cc
|
| @@ -28,6 +28,7 @@
|
| #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h"
|
| #include "chrome/browser/chromeos/profiles/profile_helper.h"
|
| #include "chrome/browser/signin/easy_unlock_service.h"
|
| +#include "chrome/browser/ui/ash/lock_screen_client.h"
|
| #include "chrome/browser/ui/webui/chromeos/login/l10n_util.h"
|
| #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h"
|
| #include "chrome/grit/generated_resources.h"
|
| @@ -540,7 +541,12 @@ void UserSelectionScreen::SendUserList() {
|
| users_list.Append(std::move(user_dict));
|
| }
|
|
|
| - handler_->LoadUsers(users_list, show_guest_);
|
| + if (handler_) {
|
| + handler_->LoadUsers(users_list, show_guest_);
|
| + } else {
|
| + // Views-based lock screen won't instantiate handler.
|
| + LockScreenClient::Get()->LoadUsers(users_list, show_guest_);
|
| + }
|
| }
|
|
|
| void UserSelectionScreen::HandleGetUsers() {
|
| @@ -656,7 +662,9 @@ void UserSelectionScreen::AttemptEasySignin(const AccountId& account_id,
|
| user_context.SetKey(Key(secret));
|
| user_context.GetKey()->SetLabel(key_label);
|
|
|
| - login_display_delegate_->Login(user_context, SigninSpecifics());
|
| + // login display delegate not exist in views-based lock screen.
|
| + if (login_display_delegate_)
|
| + login_display_delegate_->Login(user_context, SigninSpecifics());
|
| }
|
|
|
| void UserSelectionScreen::Show() {}
|
|
|