Index: chrome/browser/chromeos/login/session/user_session_manager.cc |
diff --git a/chrome/browser/chromeos/login/session/user_session_manager.cc b/chrome/browser/chromeos/login/session/user_session_manager.cc |
index f30aab8e2eff53d065a8d489f8744e5a8aa77c8f..5651b13d0b9b8850759d44aaa8449e9b37679205 100644 |
--- a/chrome/browser/chromeos/login/session/user_session_manager.cc |
+++ b/chrome/browser/chromeos/login/session/user_session_manager.cc |
@@ -350,6 +350,7 @@ void UserSessionManager::OverrideHomedir() { |
void UserSessionManager::RegisterPrefs(PrefRegistrySimple* registry) { |
registry->RegisterStringPref(prefs::kRLZBrand, std::string()); |
registry->RegisterBooleanPref(prefs::kRLZDisabled, false); |
+ registry->RegisterBooleanPref(prefs::kCanShowOobeGoodiesPage, true); |
} |
UserSessionManager::UserSessionManager() |
@@ -1137,6 +1138,9 @@ void UserSessionManager::FinalizePrepareProfile(Profile* profile) { |
// launch browser. |
bool browser_launched = InitializeUserSession(profile); |
+ // Check whether to, then set up for, display OOBE Goodies page on first run. |
+ first_run::GoodiesDisplayer::Init(this); |
+ |
// TODO(nkostylev): This pointer should probably never be NULL, but it looks |
// like OnProfileCreated() may be getting called before |
// UserSessionManager::PrepareProfile() has set |delegate_| when Chrome is |
@@ -1754,6 +1758,7 @@ bool UserSessionManager::TokenHandlesEnabled() { |
void UserSessionManager::Shutdown() { |
token_handle_fetcher_.reset(); |
token_handle_util_.reset(); |
+ DestroyGoodiesDisplayer(); |
} |
void UserSessionManager::CreateTokenUtilIfMissing() { |