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 b1d70f5b1298733569fe92d68d1b9c8b7ca97cda..9abf8678e4d09675ebd5ae81c8d8972824ce4010 100644 |
--- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
+++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
@@ -67,6 +67,7 @@ const char kGaiaExtStartPageOffline[] = |
const char kKeyUsername[] = "username"; |
const char kKeyDisplayName[] = "displayName"; |
const char kKeyEmailAddress[] = "emailAddress"; |
+const char kKeyEnterpriseDomain[] = "enterpriseDomain"; |
const char kKeyNameTooltip[] = "nameTooltip"; |
const char kKeyPublicAccount[] = "publicAccount"; |
const char kKeySignedIn[] = "signedIn"; |
@@ -105,7 +106,7 @@ void UpdateAuthParamsFromSettings(DictionaryValue* params, |
params->SetBoolean("guestSignin", allow_guest); |
} |
-} // namespace |
+} // namespace |
// SigninScreenHandler implementation ------------------------------------------ |
@@ -196,6 +197,13 @@ void SigninScreenHandler::GetLocalizedStrings( |
IDS_DISABLED_ADD_USER_TOOLTIP_ENTERPRISE : |
IDS_DISABLED_ADD_USER_TOOLTIP)); |
+ localized_strings->SetString("publicAccountInfoFormat", |
+ l10n_util::GetStringUTF16(IDS_LOGIN_PUBLIC_ACCOUNT_INFO_FORMAT)); |
+ localized_strings->SetString("publicAccountReminder", |
+ l10n_util::GetStringUTF16(IDS_LOGIN_PUBLIC_ACCOUNT_SIGNOUT_REMINDER)); |
+ localized_strings->SetString("publicAccountEnter", |
+ l10n_util::GetStringUTF16(IDS_LOGIN_PUBLIC_ACCOUNT_ENTER)); |
+ |
if (chromeos::KioskModeSettings::Get()->IsKioskModeEnabled()) { |
localized_strings->SetString("demoLoginMessage", |
l10n_util::GetStringUTF16(IDS_KIOSK_MODE_LOGIN_MESSAGE)); |
@@ -289,6 +297,9 @@ void SigninScreenHandler::RegisterMessages() { |
web_ui()->RegisterMessageCallback("launchIncognito", |
base::Bind(&SigninScreenHandler::HandleLaunchIncognito, |
base::Unretained(this))); |
+ web_ui()->RegisterMessageCallback("launchPublicAccount", |
+ base::Bind(&SigninScreenHandler::HandleLaunchPublicAccount, |
+ base::Unretained(this))); |
web_ui()->RegisterMessageCallback("offlineLogin", |
base::Bind(&SigninScreenHandler::HandleOfflineLogin, |
base::Unretained(this))); |
@@ -624,6 +635,11 @@ void SigninScreenHandler::HandleLaunchIncognito(const base::ListValue* args) { |
delegate_->LoginAsGuest(); |
} |
+void SigninScreenHandler::HandleLaunchPublicAccount( |
+ const base::ListValue* args) { |
+ // TODO(bartfab): Wire this with real public account signin. |
+} |
+ |
void SigninScreenHandler::HandleOfflineLogin(const base::ListValue* args) { |
if (!delegate_ || delegate_->IsShowUsers()) { |
NOTREACHED(); |
@@ -749,6 +765,16 @@ void SigninScreenHandler::SendUserList(bool animated) { |
user_dict->SetInteger(kKeyOauthTokenStatus, (*it)->oauth_token_status()); |
user_dict->SetBoolean(kKeySignedIn, signed_in); |
+ if (public_account) { |
+ policy::BrowserPolicyConnector* policy_connector = |
+ g_browser_process->browser_policy_connector(); |
+ |
+ if (policy_connector->IsEnterpriseManaged()) { |
+ user_dict->SetString(kKeyEnterpriseDomain, |
+ policy_connector->GetEnterpriseDomain()); |
+ } |
+ } |
+ |
// Single user check here is necessary because owner info might not be |
// available when running into login screen on first boot. |
// See http://crosbug.com/12723 |