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 80749a84d84cf7600536ed0bc07ea654ee362d29..fed0c18cfd1d2b5ecea284c58781438262b792e1 100644 |
--- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
+++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
@@ -744,6 +744,8 @@ void SigninScreenHandler::RegisterMessages() { |
AddCallback("removeUser", &SigninScreenHandler::HandleRemoveUser); |
AddCallback("toggleEnrollmentScreen", |
&SigninScreenHandler::HandleToggleEnrollmentScreen); |
+ AddCallback("switchToEmbeddedSignin", |
+ &SigninScreenHandler::HandleSwitchToEmbeddedSignin); |
AddCallback("toggleKioskEnableScreen", |
&SigninScreenHandler::HandleToggleKioskEnableScreen); |
AddCallback("createAccount", &SigninScreenHandler::HandleCreateAccount); |
@@ -1319,6 +1321,9 @@ void SigninScreenHandler::HandleLoginUIStateChanged(const std::string& source, |
VLOG(0) << "Login WebUI >> active: " << new_value << ", " |
<< "source: " << source; |
+ if (source == "gaia-signin" && !new_value) |
+ gaia_screen_handler_->CancelEmbeddedSignin(); |
+ |
if (!KioskAppManager::Get()->GetAutoLaunchApp().empty() && |
KioskAppManager::Get()->IsAutoLaunchRequested()) { |
VLOG(0) << "Showing auto-launch warning"; |
@@ -1434,6 +1439,10 @@ void SigninScreenHandler::HandleGetTouchViewState() { |
} |
} |
+void SigninScreenHandler::HandleSwitchToEmbeddedSignin() { |
+ gaia_screen_handler_->SwitchToEmbeddedSignin(); |
+} |
+ |
bool SigninScreenHandler::AllWhitelistedUsersPresent() { |
CrosSettings* cros_settings = CrosSettings::Get(); |
bool allow_new_user = false; |