Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4767)

Unified Diff: chrome/browser/ui/chrome_pages.cc

Issue 2899223002: [MD Bookmarks] Fix singleton tab behavior. (Closed)
Patch Set: add bookmark node constants Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/chrome_pages.cc
diff --git a/chrome/browser/ui/chrome_pages.cc b/chrome/browser/ui/chrome_pages.cc
index 78cf00f9e4c5215abd889d030db9d3ebe707217f..1884b76538bcc11455c1bf0fe1bba3dcb42b6d70 100644
--- a/chrome/browser/ui/chrome_pages.cc
+++ b/chrome/browser/ui/chrome_pages.cc
@@ -28,11 +28,13 @@
#include "chrome/browser/ui/settings_window_manager.h"
#include "chrome/browser/ui/singleton_tabs.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/browser/ui/webui/md_bookmarks/md_bookmarks_ui.h"
#include "chrome/browser/ui/webui/options/content_settings_handler.h"
#include "chrome/browser/ui/webui/site_settings_helper.h"
#include "chrome/common/chrome_features.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/url_constants.h"
+#include "components/bookmarks/browser/bookmark_model.h"
#include "components/signin/core/browser/signin_header_helper.h"
#include "components/signin/core/common/profile_management_switches.h"
#include "content/public/browser/web_contents.h"
@@ -67,15 +69,12 @@ namespace {
const char kHashMark[] = "#";
-void OpenBookmarkManagerWithHash(Browser* browser,
- const std::string& action,
- int64_t node_id) {
- base::RecordAction(UserMetricsAction("ShowBookmarkManager"));
- base::RecordAction(UserMetricsAction("ShowBookmarks"));
- NavigateParams params(GetSingletonTabNavigateParams(
- browser,
- GURL(kChromeUIBookmarksURL).Resolve(base::StringPrintf(
- "/#%s%s", action.c_str(), base::Int64ToString(node_id).c_str()))));
+void OpenBookmarkManagerForNode(Browser* browser, int64_t node_id) {
+ GURL url = GURL(kChromeUIBookmarksURL)
+ .Resolve(base::StringPrintf(
+ MdBookmarksUI::IsEnabled() ? "/?id=%s" : "/#%s",
+ base::Int64ToString(node_id).c_str()));
+ NavigateParams params(GetSingletonTabNavigateParams(browser, url));
params.path_behavior = NavigateParams::IGNORE_AND_NAVIGATE;
ShowSingletonTabOverwritingNTP(browser, params);
}
@@ -185,14 +184,20 @@ std::string GenerateContentSettingsSearchQueryPath(int query_message_id) {
void ShowBookmarkManager(Browser* browser) {
base::RecordAction(UserMetricsAction("ShowBookmarkManager"));
- base::RecordAction(UserMetricsAction("ShowBookmarks"));
+ if (MdBookmarksUI::IsEnabled()) {
+ OpenBookmarkManagerForNode(browser,
+ bookmarks::BookmarkModel::BOOKMARKS_BAR_NODE_ID);
+ return;
+ }
+
ShowSingletonTabOverwritingNTP(
browser,
GetSingletonTabNavigateParams(browser, GURL(kChromeUIBookmarksURL)));
}
void ShowBookmarkManagerForNode(Browser* browser, int64_t node_id) {
- OpenBookmarkManagerWithHash(browser, std::string(), node_id);
+ base::RecordAction(UserMetricsAction("ShowBookmarkManager"));
+ OpenBookmarkManagerForNode(browser, node_id);
}
void ShowHistory(Browser* browser) {

Powered by Google App Engine
This is Rietveld 408576698