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

Side by Side Diff: chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc

Issue 242693003: Introduce BookmarkClient interface to abstract embedder (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/bookmarks/bookmark_bar_view.h" 5 #include "chrome/browser/ui/views/bookmarks/bookmark_bar_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <set> 9 #include <set>
10 #include <vector> 10 #include <vector>
(...skipping 1144 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 node = model_->other_node(); 1155 node = model_->other_node();
1156 } else if (view == overflow_button_) { 1156 } else if (view == overflow_button_) {
1157 node = model_->bookmark_bar_node(); 1157 node = model_->bookmark_bar_node();
1158 start_index = GetFirstHiddenNodeIndex(); 1158 start_index = GetFirstHiddenNodeIndex();
1159 } else { 1159 } else {
1160 int button_index = GetIndexOf(view); 1160 int button_index = GetIndexOf(view);
1161 DCHECK_NE(-1, button_index); 1161 DCHECK_NE(-1, button_index);
1162 node = model_->bookmark_bar_node()->GetChild(button_index); 1162 node = model_->bookmark_bar_node()->GetChild(button_index);
1163 } 1163 }
1164 1164
1165 RecordBookmarkFolderOpen(GetBookmarkLaunchLocation()); 1165 RecordBookmarkFolderOpen(model_, GetBookmarkLaunchLocation());
1166 bookmark_menu_ = new BookmarkMenuController( 1166 bookmark_menu_ = new BookmarkMenuController(
1167 browser_, page_navigator_, GetWidget(), node, start_index); 1167 browser_, page_navigator_, GetWidget(), node, start_index);
1168 bookmark_menu_->set_observer(this); 1168 bookmark_menu_->set_observer(this);
1169 bookmark_menu_->RunMenuAt(this, false); 1169 bookmark_menu_->RunMenuAt(this, false);
1170 } 1170 }
1171 1171
1172 void BookmarkBarView::ButtonPressed(views::Button* sender, 1172 void BookmarkBarView::ButtonPressed(views::Button* sender,
1173 const ui::Event& event) { 1173 const ui::Event& event) {
1174 WindowOpenDisposition disposition_from_event_flags = 1174 WindowOpenDisposition disposition_from_event_flags =
1175 ui::DispositionFromEventFlags(event.flags()); 1175 ui::DispositionFromEventFlags(event.flags());
1176 1176
1177 if (sender->tag() == kAppsShortcutButtonTag) { 1177 if (sender->tag() == kAppsShortcutButtonTag) {
1178 OpenURLParams params(GURL(chrome::kChromeUIAppsURL), 1178 OpenURLParams params(GURL(chrome::kChromeUIAppsURL),
1179 Referrer(), 1179 Referrer(),
1180 disposition_from_event_flags, 1180 disposition_from_event_flags,
1181 content::PAGE_TRANSITION_AUTO_BOOKMARK, 1181 content::PAGE_TRANSITION_AUTO_BOOKMARK,
1182 false); 1182 false);
1183 page_navigator_->OpenURL(params); 1183 page_navigator_->OpenURL(params);
1184 RecordBookmarkAppsPageOpen(GetBookmarkLaunchLocation()); 1184 RecordBookmarkAppsPageOpen(model_, GetBookmarkLaunchLocation());
1185 return; 1185 return;
1186 } 1186 }
1187 1187
1188 const BookmarkNode* node; 1188 const BookmarkNode* node;
1189 if (sender->tag() == kOtherFolderButtonTag) { 1189 if (sender->tag() == kOtherFolderButtonTag) {
1190 node = model_->other_node(); 1190 node = model_->other_node();
1191 } else { 1191 } else {
1192 int index = GetIndexOf(sender); 1192 int index = GetIndexOf(sender);
1193 DCHECK_NE(-1, index); 1193 DCHECK_NE(-1, index);
1194 node = model_->bookmark_bar_node()->GetChild(index); 1194 node = model_->bookmark_bar_node()->GetChild(index);
1195 } 1195 }
1196 DCHECK(page_navigator_); 1196 DCHECK(page_navigator_);
1197 1197
1198 if (node->is_url()) { 1198 if (node->is_url()) {
1199 RecordAppLaunch(browser_->profile(), node->url()); 1199 RecordAppLaunch(browser_->profile(), node->url());
1200 OpenURLParams params( 1200 OpenURLParams params(
1201 node->url(), Referrer(), disposition_from_event_flags, 1201 node->url(), Referrer(), disposition_from_event_flags,
1202 content::PAGE_TRANSITION_AUTO_BOOKMARK, false); 1202 content::PAGE_TRANSITION_AUTO_BOOKMARK, false);
1203 page_navigator_->OpenURL(params); 1203 page_navigator_->OpenURL(params);
1204 } else { 1204 } else {
1205 chrome::OpenAll(GetWidget()->GetNativeWindow(), page_navigator_, node, 1205 chrome::OpenAll(GetWidget()->GetNativeWindow(), page_navigator_, node,
1206 disposition_from_event_flags, browser_->profile()); 1206 disposition_from_event_flags, browser_->profile());
1207 } 1207 }
1208 1208
1209 RecordBookmarkLaunch(node, GetBookmarkLaunchLocation()); 1209 RecordBookmarkLaunch(model_, node, GetBookmarkLaunchLocation());
1210 } 1210 }
1211 1211
1212 void BookmarkBarView::ShowContextMenuForView(views::View* source, 1212 void BookmarkBarView::ShowContextMenuForView(views::View* source,
1213 const gfx::Point& point, 1213 const gfx::Point& point,
1214 ui::MenuSourceType source_type) { 1214 ui::MenuSourceType source_type) {
1215 if (!model_->loaded()) { 1215 if (!model_->loaded()) {
1216 // Don't do anything if the model isn't loaded. 1216 // Don't do anything if the model isn't loaded.
1217 return; 1217 return;
1218 } 1218 }
1219 1219
(...skipping 632 matching lines...) Expand 10 before | Expand all | Expand 10 after
1852 DCHECK(apps_page_shortcut_); 1852 DCHECK(apps_page_shortcut_);
1853 // Only perform layout if required. 1853 // Only perform layout if required.
1854 bool visible = chrome::ShouldShowAppsShortcutInBookmarkBar( 1854 bool visible = chrome::ShouldShowAppsShortcutInBookmarkBar(
1855 browser_->profile(), browser_->host_desktop_type()); 1855 browser_->profile(), browser_->host_desktop_type());
1856 if (apps_page_shortcut_->visible() == visible) 1856 if (apps_page_shortcut_->visible() == visible)
1857 return; 1857 return;
1858 apps_page_shortcut_->SetVisible(visible); 1858 apps_page_shortcut_->SetVisible(visible);
1859 UpdateBookmarksSeparatorVisibility(); 1859 UpdateBookmarksSeparatorVisibility();
1860 Layout(); 1860 Layout();
1861 } 1861 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698