Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1372)

Unified Diff: chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc

Issue 2785003002: cros: Showing pin on lock is no longer associated with sending user list. (Closed)
Patch Set: Initial upload Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
diff --git a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
index d8ae0771c50e453cb9f83d191c7b4b1e5ae00494..1f6e301c4c70936fbcbaedc4c92fb5467a5666b5 100644
--- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
+++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
@@ -721,6 +721,14 @@ void SigninScreenHandler::ShowImpl() {
params.SetBoolean("disableAddUser", AllWhitelistedUsersPresent());
UpdateUIState(UI_STATE_ACCOUNT_PICKER, &params);
}
+
+ // Enable pin for any users who can use it.
+ if (user_manager::UserManager::IsInitialized()) {
+ for (user_manager::User* user :
+ user_manager::UserManager::Get()->GetLoggedInUsers()) {
xiyuan 2017/04/03 21:21:43 nit: GetLoggedInUsers() -> GetUnlockUsers() ? The
jdufault 2017/04/10 21:06:31 Done.
+ UpdatePinKeyboardState(user->GetAccountId());
+ }
+ }
}
void SigninScreenHandler::UpdateUIState(UIState ui_state,
@@ -1007,12 +1015,15 @@ void SigninScreenHandler::RefocusCurrentPod() {
core_oobe_view_->RefocusCurrentPod();
}
-void SigninScreenHandler::HidePinKeyboardIfNeeded(const AccountId& account_id) {
+void SigninScreenHandler::UpdatePinKeyboardState(const AccountId& account_id) {
chromeos::quick_unlock::QuickUnlockStorage* quick_unlock_storage =
chromeos::quick_unlock::QuickUnlockFactory::GetForAccountId(account_id);
- if (quick_unlock_storage &&
- !quick_unlock_storage->IsPinAuthenticationAvailable())
- CallJS("login.AccountPickerScreen.disablePinKeyboardForUser", account_id);
+ if (!quick_unlock_storage)
+ return;
+
+ bool is_enabled = quick_unlock_storage->IsPinAuthenticationAvailable();
+ CallJS("login.AccountPickerScreen.setPinEnabledForUser", account_id,
+ is_enabled);
}
void SigninScreenHandler::OnUserRemoved(const AccountId& account_id,
@@ -1139,7 +1150,7 @@ void SigninScreenHandler::Observe(int type,
void SigninScreenHandler::SuspendDone(const base::TimeDelta& sleep_duration) {
for (user_manager::User* user :
user_manager::UserManager::Get()->GetUnlockUsers()) {
- HidePinKeyboardIfNeeded(user->GetAccountId());
+ UpdatePinKeyboardState(user->GetAccountId());
}
}
@@ -1182,7 +1193,7 @@ void SigninScreenHandler::HandleAuthenticateUser(const AccountId& account_id,
user_context.SetUserType(user_manager::USER_TYPE_ACTIVE_DIRECTORY);
delegate_->Login(user_context, SigninSpecifics());
- HidePinKeyboardIfNeeded(account_id);
+ UpdatePinKeyboardState(account_id);
}
void SigninScreenHandler::HandleLaunchIncognito() {

Powered by Google App Engine
This is Rietveld 408576698