| Index: chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc
|
| diff --git a/chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc b/chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc
|
| index 196b81ba4dfad12dde2bab45922163264e41537e..e309e136fa94b39ca6f11a80e3799f066eb9704f 100644
|
| --- a/chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc
|
| +++ b/chrome/browser/chromeos/login/screens/chrome_user_selection_screen.cc
|
| @@ -77,20 +77,19 @@
|
|
|
| void ChromeUserSelectionScreen::CheckForPublicSessionDisplayNameChange(
|
| policy::DeviceLocalAccountPolicyBroker* broker) {
|
| - const AccountId& account_id = GetAccountIdOfKnownUser(broker->user_id());
|
| - DCHECK(account_id.is_valid());
|
| + const std::string& user_id = broker->user_id();
|
| const std::string& display_name = broker->GetDisplayName();
|
| - if (display_name == public_session_display_names_[account_id])
|
| + if (display_name == public_session_display_names_[user_id])
|
| return;
|
|
|
| - public_session_display_names_[account_id] = display_name;
|
| + public_session_display_names_[user_id] = display_name;
|
|
|
| if (!handler_initialized_)
|
| return;
|
|
|
| if (!display_name.empty()) {
|
| // If a new display name was set by policy, notify the UI about it.
|
| - view_->SetPublicSessionDisplayName(account_id, display_name);
|
| + view_->SetPublicSessionDisplayName(user_id, display_name);
|
| return;
|
| }
|
|
|
| @@ -102,13 +101,13 @@
|
| base::MessageLoop::current()->PostTask(
|
| FROM_HERE,
|
| base::Bind(&ChromeUserSelectionScreen::SetPublicSessionDisplayName,
|
| - weak_factory_.GetWeakPtr(), account_id));
|
| + weak_factory_.GetWeakPtr(),
|
| + user_id));
|
| }
|
|
|
| void ChromeUserSelectionScreen::CheckForPublicSessionLocalePolicyChange(
|
| policy::DeviceLocalAccountPolicyBroker* broker) {
|
| - const AccountId& account_id = GetAccountIdOfKnownUser(broker->user_id());
|
| - DCHECK(account_id.is_valid());
|
| + const std::string& user_id = broker->user_id();
|
| const policy::PolicyMap::Entry* entry =
|
| broker->core()->store()->policy_map().Get(policy::key::kSessionLocales);
|
|
|
| @@ -132,30 +131,30 @@
|
| }
|
|
|
| std::vector<std::string>& recommended_locales =
|
| - public_session_recommended_locales_[account_id];
|
| + public_session_recommended_locales_[user_id];
|
|
|
| if (new_recommended_locales != recommended_locales)
|
| - SetPublicSessionLocales(account_id, new_recommended_locales);
|
| + SetPublicSessionLocales(user_id, new_recommended_locales);
|
|
|
| if (new_recommended_locales.empty())
|
| - public_session_recommended_locales_.erase(account_id);
|
| + public_session_recommended_locales_.erase(user_id);
|
| else
|
| recommended_locales = new_recommended_locales;
|
| }
|
|
|
| void ChromeUserSelectionScreen::SetPublicSessionDisplayName(
|
| - const AccountId& account_id) {
|
| - const user_manager::User* user =
|
| - user_manager::UserManager::Get()->FindUser(account_id);
|
| + const std::string& user_id) {
|
| + const user_manager::User* user = user_manager::UserManager::Get()->FindUser(
|
| + AccountId::FromUserEmail(user_id));
|
| if (!user || user->GetType() != user_manager::USER_TYPE_PUBLIC_ACCOUNT)
|
| return;
|
|
|
| - view_->SetPublicSessionDisplayName(account_id,
|
| + view_->SetPublicSessionDisplayName(user_id,
|
| base::UTF16ToUTF8(user->GetDisplayName()));
|
| }
|
|
|
| void ChromeUserSelectionScreen::SetPublicSessionLocales(
|
| - const AccountId& account_id,
|
| + const std::string& user_id,
|
| const std::vector<std::string>& recommended_locales) {
|
| if (!handler_initialized_)
|
| return;
|
| @@ -179,7 +178,7 @@
|
| const bool two_or_more_recommended_locales = recommended_locales.size() >= 2;
|
|
|
| // Notify the UI.
|
| - view_->SetPublicSessionLocales(account_id, available_locales.Pass(),
|
| + view_->SetPublicSessionLocales(user_id, available_locales.Pass(),
|
| default_locale,
|
| two_or_more_recommended_locales);
|
| }
|
|
|