| 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 c631d08da1f776501fbe92458e6ad696a47c4784..1b24e33aa926928c1396880f24b9836d043d8135 100644
|
| --- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
|
| +++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc
|
| @@ -32,6 +32,7 @@
|
| #include "chrome/browser/chromeos/login/error_screens_histogram_helper.h"
|
| #include "chrome/browser/chromeos/login/hwid_checker.h"
|
| #include "chrome/browser/chromeos/login/lock/screen_locker.h"
|
| +#include "chrome/browser/chromeos/login/reauth_stats.h"
|
| #include "chrome/browser/chromeos/login/screens/core_oobe_actor.h"
|
| #include "chrome/browser/chromeos/login/screens/network_error.h"
|
| #include "chrome/browser/chromeos/login/startup_utils.h"
|
| @@ -511,6 +512,10 @@ void SigninScreenHandler::RegisterMessages() {
|
| &SigninScreenHandler::HandleGetTouchViewState);
|
| AddCallback("logRemoveUserWarningShown",
|
| &SigninScreenHandler::HandleLogRemoveUserWarningShown);
|
| + AddCallback("firstIncorrectPasswordAttempt",
|
| + &SigninScreenHandler::HandleFirstIncorrectPasswordAttempt);
|
| + AddCallback("maxIncorrectPasswordAttempts",
|
| + &SigninScreenHandler::HandleMaxIncorrectPasswordAttempts);
|
|
|
| // This message is sent by the kiosk app menu, but is handled here
|
| // so we can tell the delegate to launch the app.
|
| @@ -1088,6 +1093,8 @@ void SigninScreenHandler::HandleShowAddUser(const base::ListValue* args) {
|
| if (args)
|
| args->GetString(0, &email);
|
| gaia_screen_handler_->PopulateEmail(email);
|
| + if (!email.empty())
|
| + SendReauthReason(email);
|
| OnShowAddUser();
|
| }
|
|
|
| @@ -1192,7 +1199,10 @@ void SigninScreenHandler::HandleLoginVisible(const std::string& source) {
|
| OnPreferencesChanged();
|
| }
|
|
|
| -void SigninScreenHandler::HandleCancelPasswordChangedFlow() {
|
| +void SigninScreenHandler::HandleCancelPasswordChangedFlow(
|
| + const std::string& user_id) {
|
| + if (!user_id.empty())
|
| + RecordReauthReason(user_id, ReauthReason::PASSWORD_UPDATE_SKIPPED);
|
| gaia_screen_handler_->StartClearingCookies(
|
| base::Bind(&SigninScreenHandler::CancelPasswordChangedFlowInternal,
|
| weak_factory_.GetWeakPtr()));
|
| @@ -1317,6 +1327,20 @@ void SigninScreenHandler::HandleLogRemoveUserWarningShown() {
|
| ProfileMetrics::DELETE_PROFILE_USER_MANAGER_SHOW_WARNING);
|
| }
|
|
|
| +void SigninScreenHandler::HandleFirstIncorrectPasswordAttempt(
|
| + const std::string& email) {
|
| + // TODO(ginkage): Fix this case once crbug.com/469987 is ready.
|
| + /*
|
| + if (user_manager::UserManager::Get()->FindUsingSAML(email))
|
| + RecordReauthReason(email, ReauthReason::INCORRECT_SAML_PASSWORD_ENTERED);
|
| + */
|
| +}
|
| +
|
| +void SigninScreenHandler::HandleMaxIncorrectPasswordAttempts(
|
| + const std::string& email) {
|
| + RecordReauthReason(email, ReauthReason::INCORRECT_PASSWORD_ENTERED);
|
| +}
|
| +
|
| bool SigninScreenHandler::AllWhitelistedUsersPresent() {
|
| CrosSettings* cros_settings = CrosSettings::Get();
|
| bool allow_new_user = false;
|
|
|