| Index: chrome/browser/ui/startup/startup_tab_provider.cc
|
| diff --git a/chrome/browser/ui/startup/startup_tab_provider.cc b/chrome/browser/ui/startup/startup_tab_provider.cc
|
| index 635e3ef11bb01cf5984f84e7a590035f87d67311..7270275644e1d171f783803ac589aea2d65b709f 100644
|
| --- a/chrome/browser/ui/startup/startup_tab_provider.cc
|
| +++ b/chrome/browser/ui/startup/startup_tab_provider.cc
|
| @@ -53,8 +53,12 @@ StartupTabs StartupTabProviderImpl::GetResetTriggerTabs(
|
| return CheckResetTriggerTabPolicy(has_reset_trigger);
|
| }
|
|
|
| -StartupTabs StartupTabProviderImpl::GetPinnedTabs(Profile* profile) const {
|
| - return PinnedTabCodec::ReadPinnedTabs(profile);
|
| +StartupTabs StartupTabProviderImpl::GetPinnedTabs(
|
| + const base::CommandLine& command_line,
|
| + Profile* profile) const {
|
| + return CheckPinnedTabPolicy(
|
| + StartupBrowserCreator::GetSessionStartupPref(command_line, profile),
|
| + PinnedTabCodec::ReadPinnedTabs(profile));
|
| }
|
|
|
| StartupTabs StartupTabProviderImpl::GetPreferencesTabs(
|
| @@ -64,6 +68,13 @@ StartupTabs StartupTabProviderImpl::GetPreferencesTabs(
|
| StartupBrowserCreator::GetSessionStartupPref(command_line, profile));
|
| }
|
|
|
| +StartupTabs StartupTabProviderImpl::GetNewTabPageTabs(
|
| + const base::CommandLine& command_line,
|
| + Profile* profile) const {
|
| + return CheckNewTabPageTabPolicy(
|
| + StartupBrowserCreator::GetSessionStartupPref(command_line, profile));
|
| +}
|
| +
|
| // static
|
| StartupTabs StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(
|
| bool is_first_run) {
|
| @@ -106,17 +117,34 @@ StartupTabs StartupTabProviderImpl::CheckResetTriggerTabPolicy(
|
| }
|
|
|
| // static
|
| +StartupTabs StartupTabProviderImpl::CheckPinnedTabPolicy(
|
| + const SessionStartupPref& pref,
|
| + const StartupTabs& pinned_tabs) {
|
| + return (pref.type == SessionStartupPref::Type::LAST) ? StartupTabs()
|
| + : pinned_tabs;
|
| +}
|
| +
|
| +// static
|
| StartupTabs StartupTabProviderImpl::CheckPreferencesTabPolicy(
|
| - SessionStartupPref pref) {
|
| + const SessionStartupPref& pref) {
|
| StartupTabs tabs;
|
| if (pref.type == SessionStartupPref::Type::URLS && !pref.urls.empty()) {
|
| - for (auto& url : pref.urls)
|
| + for (const auto& url : pref.urls)
|
| tabs.push_back(StartupTab(url, false));
|
| }
|
| return tabs;
|
| }
|
|
|
| // static
|
| +StartupTabs StartupTabProviderImpl::CheckNewTabPageTabPolicy(
|
| + const SessionStartupPref& pref) {
|
| + StartupTabs tabs;
|
| + if (pref.type != SessionStartupPref::Type::LAST)
|
| + tabs.emplace_back(GURL(chrome::kChromeUINewTabURL), false);
|
| + return tabs;
|
| +}
|
| +
|
| +// static
|
| GURL StartupTabProviderImpl::GetWelcomePageUrl() {
|
| return GURL(chrome::kChromeUIWelcomeURL);
|
| }
|
|
|