diff options
author | glen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-03 04:35:36 +0000 |
---|---|---|
committer | glen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-03 04:35:36 +0000 |
commit | 7a5f33d653f43e6effd8247b2a3a623ec80c95b0 (patch) | |
tree | 6e7c09c954d3dc602b3a019c49cf3ce0976be0a2 | |
parent | 69acda8a4dd801608af986d95df16851ce8c50e5 (diff) | |
download | chromium_src-7a5f33d653f43e6effd8247b2a3a623ec80c95b0.zip chromium_src-7a5f33d653f43e6effd8247b2a3a623ec80c95b0.tar.gz chromium_src-7a5f33d653f43e6effd8247b2a3a623ec80c95b0.tar.bz2 |
Make history and downloads open once per window unless the user modifies their view.
Also fix the back dropdown so that it opens the DOMUI version of History rather than the NativeUI version.
BUG=8086,8297
Review URL: http://codereview.chromium.org/39002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10782 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/back_forward_menu_model.cc | 3 | ||||
-rw-r--r-- | chrome/browser/browser.cc | 18 | ||||
-rw-r--r-- | chrome/browser/browser.h | 4 |
3 files changed, 9 insertions, 16 deletions
diff --git a/chrome/browser/back_forward_menu_model.cc b/chrome/browser/back_forward_menu_model.cc index 48254c3..a57541d 100644 --- a/chrome/browser/back_forward_menu_model.cc +++ b/chrome/browser/back_forward_menu_model.cc @@ -7,6 +7,7 @@ #include "chrome/browser/back_forward_menu_model.h" #include "chrome/browser/browser.h" +#include "chrome/browser/dom_ui/history_ui.h" #include "chrome/browser/metrics/user_metrics.h" #include "chrome/browser/tab_contents/navigation_controller.h" #include "chrome/browser/tab_contents/navigation_entry.h" @@ -170,7 +171,7 @@ void BackForwardMenuModel::ExecuteCommandById(int menu_id) { UserMetrics::RecordComputedAction(BuildActionName(L"ShowFullHistory", -1), controller->profile()); #if defined(OS_WIN) - browser_->ShowNativeUITab(HistoryTabUI::GetURL()); + browser_->ShowSingleDOMUITab(HistoryUI::GetBaseURL()); #else NOTIMPLEMENTED(); #endif diff --git a/chrome/browser/browser.cc b/chrome/browser/browser.cc index 65ad221..57af5ab 100644 --- a/chrome/browser/browser.cc +++ b/chrome/browser/browser.cc @@ -536,22 +536,18 @@ void Browser::ReplaceRestoredTab( restored_controller); } -void Browser::ShowNativeUITab(const GURL& url) { +void Browser::ShowSingleDOMUITab(const GURL& url) { int i, c; TabContents* tc; for (i = 0, c = tabstrip_model_.count(); i < c; ++i) { tc = tabstrip_model_.GetTabContentsAt(i); - if (tc->type() == TAB_CONTENTS_NATIVE_UI && + if (tc->type() == TAB_CONTENTS_DOM_UI && tc->GetURL() == url) { tabstrip_model_.SelectTabContentsAt(i, false); return; } } - - TabContents* contents = CreateTabContentsForURL(url, GURL(), profile_, - PageTransition::LINK, false, - NULL); - AddNewContents(NULL, contents, NEW_FOREGROUND_TAB, gfx::Rect(), true); + AddTabWithURL(url, GURL(), PageTransition::AUTO_BOOKMARK, true, NULL); } /////////////////////////////////////////////////////////////////////////////// @@ -971,9 +967,7 @@ void Browser::ToggleBookmarkBar() { void Browser::ShowHistoryTab() { UserMetrics::RecordAction(L"ShowHistory", profile_); - GURL downloads_url = HistoryUI::GetBaseURL(); - AddTabWithURL(downloads_url, GURL(), PageTransition::AUTO_BOOKMARK, true, - NULL); + ShowSingleDOMUITab(HistoryUI::GetBaseURL()); } void Browser::OpenBookmarkManager() { @@ -983,9 +977,7 @@ void Browser::OpenBookmarkManager() { void Browser::ShowDownloadsTab() { UserMetrics::RecordAction(L"ShowDownloads", profile_); - GURL downloads_url = DownloadsUI::GetBaseURL(); - AddTabWithURL(downloads_url, GURL(), PageTransition::AUTO_BOOKMARK, true, - NULL); + ShowSingleDOMUITab(DownloadsUI::GetBaseURL()); } void Browser::OpenClearBrowsingDataDialog() { diff --git a/chrome/browser/browser.h b/chrome/browser/browser.h index 1be5d90..3fa7973 100644 --- a/chrome/browser/browser.h +++ b/chrome/browser/browser.h @@ -213,10 +213,10 @@ class Browser : public TabStripModelDelegate, const std::vector<TabNavigation>& navigations, int selected_navigation); - // Show a native UI tab given a URL. If a tab with the same URL is already + // Show a DOMUI tab given a URL. If a tab with the same URL is already // visible in this browser, it becomes selected. Otherwise a new tab is // created. - void ShowNativeUITab(const GURL& url); + void ShowSingleDOMUITab(const GURL& url); // Assorted browser commands //////////////////////////////////////////////// |