summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-28 23:38:53 +0000
committersadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-28 23:38:53 +0000
commitc2c3ada8b28d9c812d65250133c236fc4ef02f63 (patch)
treeb94a495c4e745451eef1e0c78b43dc5bc8e9204c
parent9576d655c7284562b969117c2d849a589fd06a76 (diff)
downloadchromium_src-c2c3ada8b28d9c812d65250133c236fc4ef02f63.zip
chromium_src-c2c3ada8b28d9c812d65250133c236fc4ef02f63.tar.gz
chromium_src-c2c3ada8b28d9c812d65250133c236fc4ef02f63.tar.bz2
Open the home page on launch even when there are pinned tabs.
BUG=55153 TEST=RetorePinnedTab Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=76245 Review URL: http://codereview.chromium.org/6602002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76309 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/browser_browsertest.cc10
-rw-r--r--chrome/browser/ui/browser_init.cc5
2 files changed, 13 insertions, 2 deletions
diff --git a/chrome/browser/browser_browsertest.cc b/chrome/browser/browser_browsertest.cc
index 35e933f..a9a599a 100644
--- a/chrome/browser/browser_browsertest.cc
+++ b/chrome/browser/browser_browsertest.cc
@@ -636,16 +636,22 @@ IN_PROC_BROWSER_TEST_F(BrowserTest, RestorePinnedTabs) {
ASSERT_TRUE(new_browser);
ASSERT_TRUE(new_browser != browser());
- // We should get back an additional tab for the app.
- ASSERT_EQ(2, new_browser->tab_count());
+ // We should get back an additional tab for the app, and another for the
+ // default home page.
+ ASSERT_EQ(3, new_browser->tab_count());
// Make sure the state matches.
TabStripModel* new_model = new_browser->tabstrip_model();
EXPECT_TRUE(new_model->IsAppTab(0));
EXPECT_FALSE(new_model->IsAppTab(1));
+ EXPECT_FALSE(new_model->IsAppTab(2));
EXPECT_TRUE(new_model->IsTabPinned(0));
EXPECT_TRUE(new_model->IsTabPinned(1));
+ EXPECT_FALSE(new_model->IsTabPinned(2));
+
+ EXPECT_EQ(browser()->GetHomePage(),
+ new_model->GetTabContentsAt(2)->tab_contents()->GetURL());
EXPECT_TRUE(
new_model->GetTabContentsAt(0)->tab_contents()->extension_app() ==
diff --git a/chrome/browser/ui/browser_init.cc b/chrome/browser/ui/browser_init.cc
index a803d7b..1da6dea 100644
--- a/chrome/browser/ui/browser_init.cc
+++ b/chrome/browser/ui/browser_init.cc
@@ -936,6 +936,11 @@ bool BrowserInit::LaunchWithProfile::ProcessStartupURLs(
// Only use the set of urls specified in preferences if nothing was
// specified on the command line.
UrlsToTabs(pref.urls, &tabs);
+ } else if (pref.type == SessionStartupPref::DEFAULT && !tabs.empty()) {
+ // Make sure the home page is opened even if there are pinned tabs.
+ std::vector<GURL> urls;
+ AddStartupURLs(&urls);
+ UrlsToTabs(urls, &tabs);
}
if (tabs.empty())