Index: chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
diff --git a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
index e71da5ac5ad0c8feda8938ab4b068de21232d264..9aca4f46abf1f6ceab87d969e3c27996c1f7652a 100644 |
--- a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
+++ b/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
@@ -504,8 +504,10 @@ void GaiaScreenHandler::HandleCompleteAuthentication( |
DCHECK(!gaia_id.empty()); |
const std::string sanitized_email = gaia::SanitizeEmail(email); |
Delegate()->SetDisplayEmail(sanitized_email); |
- UserContext user_context(sanitized_email); |
- user_context.SetGaiaID(gaia_id); |
+ |
+ user_manager::UserID user_id(user_manager::UserID::FromUserEmail(sanitized_email)); |
+ user_id.SetGaiaId(gaia_id); |
+ UserContext user_context(user_id); |
user_context.SetKey(Key(password)); |
user_context.SetAuthCode(auth_code); |
user_context.SetAuthFlow(using_saml |
@@ -537,18 +539,18 @@ void GaiaScreenHandler::HandleCompleteLogin(const std::string& gaia_id, |
} |
// Consumer management enrollment is in progress. |
- const std::string owner_email = |
- user_manager::UserManager::Get()->GetOwnerEmail(); |
- if (typed_email != owner_email) { |
+ const user_manager::UserID owner_id = |
+ user_manager::UserManager::Get()->GetOwnerID(); |
+ if (user_manager::UserID::FromUserEmail(typed_email) != owner_id) { |
// Show Gaia sign-in screen again, since we only allow the owner to sign |
// in. |
- populated_email_ = owner_email; |
+ populated_email_ = owner_id.GetUserEmail(); |
ShowGaiaAsync(is_enrolling_consumer_management_); |
return; |
} |
CHECK(consumer_management_); |
- consumer_management_->SetOwner(owner_email, |
+ consumer_management_->SetOwner(owner_id, |
base::Bind(&GaiaScreenHandler::OnSetOwnerDone, |
weak_factory_.GetWeakPtr(), |
gaia_id, |
@@ -664,8 +666,10 @@ void GaiaScreenHandler::DoCompleteLogin(const std::string& gaia_id, |
DCHECK(!gaia_id.empty()); |
const std::string sanitized_email = gaia::SanitizeEmail(typed_email); |
Delegate()->SetDisplayEmail(sanitized_email); |
- UserContext user_context(sanitized_email); |
- user_context.SetGaiaID(gaia_id); |
+ |
+ user_manager::UserID user_id(user_manager::UserID::FromUserEmail(sanitized_email)); |
+ user_id.SetGaiaId(gaia_id); |
+ UserContext user_context(user_id); |
user_context.SetKey(Key(password)); |
user_context.SetAuthFlow(using_saml |
? UserContext::AUTH_FLOW_GAIA_WITH_SAML |
@@ -686,7 +690,7 @@ void GaiaScreenHandler::PopulateEmail(const std::string& user_id) { |
populated_email_ = user_id; |
} |
-void GaiaScreenHandler::PasswordChangedFor(const std::string& user_id) { |
+void GaiaScreenHandler::PasswordChangedFor(const user_manager::UserID& user_id) { |
password_changed_for_.insert(user_id); |
} |
@@ -728,12 +732,12 @@ void GaiaScreenHandler::OnCookiesCleared( |
on_clear_callback.Run(); |
} |
-void GaiaScreenHandler::ShowSigninScreenForCreds(const std::string& username, |
+void GaiaScreenHandler::ShowSigninScreenForCreds(const user_manager::UserID& user_id, |
const std::string& password) { |
- VLOG(2) << "ShowSigninScreenForCreds for user " << username |
+ VLOG(2) << "ShowSigninScreenForCreds for user " << user_id.GetUserEmail() |
<< ", frame_state=" << frame_state(); |
- test_user_ = username; |
+ test_user_ = user_id.GetUserEmail(); |
test_pass_ = password; |
test_expects_complete_login_ = true; |
@@ -825,11 +829,13 @@ void GaiaScreenHandler::ShowGaiaScreenIfReady() { |
focus_stolen_ = false; |
} |
- // Note that LoadAuthExtension clears |populated_email_|. |
- if (populated_email_.empty()) |
+ const user_manager::UserID populated_user_id = user_manager::UserID::FromUserEmail(populated_email_); |
+ |
+ // Note that LoadAuthExtension clears |populated_user_id|. |
+ if (populated_user_id.empty()) |
Delegate()->LoadSigninWallpaper(); |
else |
- Delegate()->LoadWallpaper(populated_email_); |
+ Delegate()->LoadWallpaper(populated_user_id); |
input_method::InputMethodManager* imm = |
input_method::InputMethodManager::Get(); |
@@ -839,14 +845,14 @@ void GaiaScreenHandler::ShowGaiaScreenIfReady() { |
imm->SetState(gaia_ime_state); |
// Set Least Recently Used input method for the user. |
- if (!populated_email_.empty()) { |
- SigninScreenHandler::SetUserInputMethod(populated_email_, |
+ if (!populated_user_id.empty()) { |
+ SigninScreenHandler::SetUserInputMethod(populated_user_id, |
gaia_ime_state.get()); |
} else { |
std::vector<std::string> input_methods = |
imm->GetInputMethodUtil()->GetHardwareLoginInputMethodIds(); |
const std::string owner_im = SigninScreenHandler::GetUserLRUInputMethod( |
- user_manager::UserManager::Get()->GetOwnerEmail()); |
+ user_manager::UserManager::Get()->GetOwnerID()); |
const std::string system_im = g_browser_process->local_state()->GetString( |
language_prefs::kPreferredKeyboardLayout); |
@@ -914,17 +920,19 @@ void GaiaScreenHandler::ShowWhitelistCheckFailedError() { |
void GaiaScreenHandler::LoadAuthExtension(bool force, |
bool silent_load, |
bool offline) { |
+ const user_manager::UserID populated_user_id = user_manager::UserID::FromUserEmail(populated_email_); |
+ |
GaiaContext context; |
context.force_reload = force; |
context.is_local = offline; |
- context.password_changed = !populated_email_.empty() && |
- password_changed_for_.count(populated_email_); |
+ context.password_changed = !populated_user_id.empty() && |
+ password_changed_for_.count(populated_user_id); |
context.use_offline = offline; |
- context.email = populated_email_; |
+ context.email = populated_user_id.GetUserEmail(); |
context.is_enrolling_consumer_management = is_enrolling_consumer_management_; |
std::string gaia_id; |
- if (user_manager::UserManager::Get()->FindGaiaID(context.email, &gaia_id)) |
+ if (user_manager::UserManager::Get()->FindGaiaID(populated_user_id, &gaia_id)) |
context.gaia_id = gaia_id; |
if (Delegate()) { |