Chromium Code Reviews| 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..157128a7aaced3872a360429cba2cea06da68189 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,10 @@ 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. |
| + goodies_displayer_delegate_.reset(new first_run::GoodiesDisplayer::Delegate); |
| + first_run::GoodiesDisplayer::Init(goodies_displayer_delegate_.get()); |
| + |
| // 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 +1759,7 @@ bool UserSessionManager::TokenHandlesEnabled() { |
| void UserSessionManager::Shutdown() { |
| token_handle_fetcher_.reset(); |
| token_handle_util_.reset(); |
| + goodies_displayer_delegate_->DestroyGoodiesDisplayer(); |
|
achuithb
2015/09/18 19:05:52
Call reset instead.
|
| } |
| void UserSessionManager::CreateTokenUtilIfMissing() { |