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

Side by Side Diff: chrome/browser/ui/views/frame/browser_view.cc

Issue 2374253002: Fix bookmark bubble/star view highlighting for Harmony. (Closed)
Patch Set: Created 4 years, 2 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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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/frame/browser_view.h" 5 #include "chrome/browser/ui/views/frame/browser_view.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 #include "chrome/browser/ui/views/frame/browser_view_layout.h" 74 #include "chrome/browser/ui/views/frame/browser_view_layout.h"
75 #include "chrome/browser/ui/views/frame/browser_view_layout_delegate.h" 75 #include "chrome/browser/ui/views/frame/browser_view_layout_delegate.h"
76 #include "chrome/browser/ui/views/frame/contents_layout_manager.h" 76 #include "chrome/browser/ui/views/frame/contents_layout_manager.h"
77 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h" 77 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h"
78 #include "chrome/browser/ui/views/frame/top_container_view.h" 78 #include "chrome/browser/ui/views/frame/top_container_view.h"
79 #include "chrome/browser/ui/views/frame/web_contents_close_handler.h" 79 #include "chrome/browser/ui/views/frame/web_contents_close_handler.h"
80 #include "chrome/browser/ui/views/ime/ime_warning_bubble_view.h" 80 #include "chrome/browser/ui/views/ime/ime_warning_bubble_view.h"
81 #include "chrome/browser/ui/views/infobars/infobar_container_view.h" 81 #include "chrome/browser/ui/views/infobars/infobar_container_view.h"
82 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" 82 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
83 #include "chrome/browser/ui/views/location_bar/location_icon_view.h" 83 #include "chrome/browser/ui/views/location_bar/location_icon_view.h"
84 #include "chrome/browser/ui/views/location_bar/star_view.h"
84 #include "chrome/browser/ui/views/location_bar/zoom_bubble_view.h" 85 #include "chrome/browser/ui/views/location_bar/zoom_bubble_view.h"
85 #include "chrome/browser/ui/views/new_back_shortcut_bubble.h" 86 #include "chrome/browser/ui/views/new_back_shortcut_bubble.h"
86 #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h" 87 #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h"
87 #include "chrome/browser/ui/views/profiles/profile_indicator_icon.h" 88 #include "chrome/browser/ui/views/profiles/profile_indicator_icon.h"
88 #include "chrome/browser/ui/views/session_crashed_bubble_view.h" 89 #include "chrome/browser/ui/views/session_crashed_bubble_view.h"
89 #include "chrome/browser/ui/views/status_bubble_views.h" 90 #include "chrome/browser/ui/views/status_bubble_views.h"
90 #include "chrome/browser/ui/views/tabs/browser_tab_strip_controller.h" 91 #include "chrome/browser/ui/views/tabs/browser_tab_strip_controller.h"
91 #include "chrome/browser/ui/views/tabs/tab.h" 92 #include "chrome/browser/ui/views/tabs/tab.h"
92 #include "chrome/browser/ui/views/tabs/tab_strip.h" 93 #include "chrome/browser/ui/views/tabs/tab_strip.h"
93 #include "chrome/browser/ui/views/toolbar/app_menu_button.h" 94 #include "chrome/browser/ui/views/toolbar/app_menu_button.h"
(...skipping 1142 matching lines...) Expand 10 before | Expand all | Expand 10 after
1236 } 1237 }
1237 1238
1238 void BrowserView::ShowUpdateChromeDialog() { 1239 void BrowserView::ShowUpdateChromeDialog() {
1239 UpdateRecommendedMessageBox::Show(GetNativeWindow()); 1240 UpdateRecommendedMessageBox::Show(GetNativeWindow());
1240 } 1241 }
1241 1242
1242 void BrowserView::ShowBookmarkBubble(const GURL& url, bool already_bookmarked) { 1243 void BrowserView::ShowBookmarkBubble(const GURL& url, bool already_bookmarked) {
1243 std::unique_ptr<BubbleSyncPromoDelegate> delegate; 1244 std::unique_ptr<BubbleSyncPromoDelegate> delegate;
1244 delegate.reset(new BookmarkBubbleSignInDelegate(browser_.get())); 1245 delegate.reset(new BookmarkBubbleSignInDelegate(browser_.get()));
1245 1246
1246 views::View* anchor_view = GetToolbarView()->GetBookmarkBubbleAnchor(); 1247 views::View* anchor_view = toolbar_->GetBookmarkBubbleAnchor();
sky 2016/09/29 03:17:40 I find this change confusing because it's assuming
Evan Stade 2016/09/29 17:20:01 sure, sounds reasonable. done.
1247 views::Widget* bubble_widget = BookmarkBubbleView::ShowBubble( 1248 views::Widget* bubble_widget = BookmarkBubbleView::ShowBubble(
1248 anchor_view, gfx::Rect(), nullptr, bookmark_bar_view_.get(), 1249 anchor_view, gfx::Rect(), nullptr, bookmark_bar_view_.get(),
1249 std::move(delegate), browser_->profile(), url, already_bookmarked); 1250 std::move(delegate), browser_->profile(), url, already_bookmarked);
1250 GetToolbarView()->OnBubbleCreatedForAnchor(anchor_view, bubble_widget); 1251 bubble_widget->AddObserver(toolbar_->location_bar()->star_view());
1251 } 1252 }
1252 1253
1253 void BrowserView::ShowBookmarkAppBubble( 1254 void BrowserView::ShowBookmarkAppBubble(
1254 const WebApplicationInfo& web_app_info, 1255 const WebApplicationInfo& web_app_info,
1255 const ShowBookmarkAppBubbleCallback& callback) { 1256 const ShowBookmarkAppBubbleCallback& callback) {
1256 BookmarkAppConfirmationView::CreateAndShow(GetNativeWindow(), web_app_info, 1257 BookmarkAppConfirmationView::CreateAndShow(GetNativeWindow(), web_app_info,
1257 callback); 1258 callback);
1258 } 1259 }
1259 1260
1260 autofill::SaveCardBubbleView* BrowserView::ShowSaveCreditCardBubble( 1261 autofill::SaveCardBubbleView* BrowserView::ShowSaveCreditCardBubble(
1261 content::WebContents* web_contents, 1262 content::WebContents* web_contents,
1262 autofill::SaveCardBubbleController* controller, 1263 autofill::SaveCardBubbleController* controller,
1263 bool is_user_gesture) { 1264 bool is_user_gesture) {
1264 views::View* anchor_view = GetToolbarView()->GetSaveCreditCardBubbleAnchor(); 1265 views::View* anchor_view = toolbar_->GetSaveCreditCardBubbleAnchor();
1265 autofill::SaveCardBubbleViews* view = new autofill::SaveCardBubbleViews( 1266 autofill::SaveCardBubbleViews* view = new autofill::SaveCardBubbleViews(
1266 anchor_view, web_contents, controller); 1267 anchor_view, web_contents, controller);
1267 GetToolbarView()->OnBubbleCreatedForAnchor(anchor_view, view->GetWidget()); 1268 toolbar_->OnBubbleCreatedForAnchor(anchor_view, view->GetWidget());
1268 view->Show(is_user_gesture ? autofill::SaveCardBubbleViews::USER_GESTURE 1269 view->Show(is_user_gesture ? autofill::SaveCardBubbleViews::USER_GESTURE
1269 : autofill::SaveCardBubbleViews::AUTOMATIC); 1270 : autofill::SaveCardBubbleViews::AUTOMATIC);
1270 return view; 1271 return view;
1271 } 1272 }
1272 1273
1273 void BrowserView::ShowTranslateBubble( 1274 void BrowserView::ShowTranslateBubble(
1274 content::WebContents* web_contents, 1275 content::WebContents* web_contents,
1275 translate::TranslateStep step, 1276 translate::TranslateStep step,
1276 translate::TranslateErrors::Type error_type, 1277 translate::TranslateErrors::Type error_type,
1277 bool is_user_gesture) { 1278 bool is_user_gesture) {
1278 if (contents_web_view_->HasFocus() && 1279 if (contents_web_view_->HasFocus() &&
1279 !GetLocationBarView()->IsMouseHovered()) { 1280 !GetLocationBarView()->IsMouseHovered()) {
1280 content::RenderViewHost* rvh = web_contents->GetRenderViewHost(); 1281 content::RenderViewHost* rvh = web_contents->GetRenderViewHost();
1281 if (rvh->IsFocusedElementEditable()) 1282 if (rvh->IsFocusedElementEditable())
1282 return; 1283 return;
1283 } 1284 }
1284 1285
1285 ChromeTranslateClient* chrome_translate_client = 1286 ChromeTranslateClient* chrome_translate_client =
1286 ChromeTranslateClient::FromWebContents(web_contents); 1287 ChromeTranslateClient::FromWebContents(web_contents);
1287 translate::LanguageState& language_state = 1288 translate::LanguageState& language_state =
1288 chrome_translate_client->GetLanguageState(); 1289 chrome_translate_client->GetLanguageState();
1289 language_state.SetTranslateEnabled(true); 1290 language_state.SetTranslateEnabled(true);
1290 1291
1291 if (IsMinimized()) 1292 if (IsMinimized())
1292 return; 1293 return;
1293 1294
1294 views::View* anchor_view = GetToolbarView()->GetTranslateBubbleAnchor(); 1295 views::View* anchor_view = toolbar_->GetTranslateBubbleAnchor();
1295 views::Widget* bubble_widget = TranslateBubbleView::ShowBubble( 1296 views::Widget* bubble_widget = TranslateBubbleView::ShowBubble(
1296 anchor_view, web_contents, step, 1297 anchor_view, web_contents, step,
1297 error_type, is_user_gesture ? TranslateBubbleView::USER_GESTURE 1298 error_type, is_user_gesture ? TranslateBubbleView::USER_GESTURE
1298 : TranslateBubbleView::AUTOMATIC); 1299 : TranslateBubbleView::AUTOMATIC);
1299 GetToolbarView()->OnBubbleCreatedForAnchor(anchor_view, bubble_widget); 1300 toolbar_->OnBubbleCreatedForAnchor(anchor_view, bubble_widget);
1300 } 1301 }
1301 1302
1302 #if BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN) 1303 #if BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN)
1303 void BrowserView::ShowOneClickSigninConfirmation( 1304 void BrowserView::ShowOneClickSigninConfirmation(
1304 const base::string16& email, 1305 const base::string16& email,
1305 const StartSyncCallback& start_sync_callback) { 1306 const StartSyncCallback& start_sync_callback) {
1306 std::unique_ptr<OneClickSigninLinksDelegate> delegate( 1307 std::unique_ptr<OneClickSigninLinksDelegate> delegate(
1307 new OneClickSigninLinksDelegateImpl(browser())); 1308 new OneClickSigninLinksDelegateImpl(browser()));
1308 OneClickSigninDialogView::ShowDialog(email, std::move(delegate), 1309 OneClickSigninDialogView::ShowDialog(email, std::move(delegate),
1309 GetNativeWindow(), start_sync_callback); 1310 GetNativeWindow(), start_sync_callback);
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
1526 } 1527 }
1527 1528
1528 LocationBarView* BrowserView::GetLocationBarView() const { 1529 LocationBarView* BrowserView::GetLocationBarView() const {
1529 return toolbar_ ? toolbar_->location_bar() : nullptr; 1530 return toolbar_ ? toolbar_->location_bar() : nullptr;
1530 } 1531 }
1531 1532
1532 views::View* BrowserView::GetTabContentsContainerView() const { 1533 views::View* BrowserView::GetTabContentsContainerView() const {
1533 return contents_web_view_; 1534 return contents_web_view_;
1534 } 1535 }
1535 1536
1536 ToolbarView* BrowserView::GetToolbarView() const {
1537 return toolbar_;
1538 }
1539
1540 /////////////////////////////////////////////////////////////////////////////// 1537 ///////////////////////////////////////////////////////////////////////////////
1541 // BrowserView, TabStripModelObserver implementation: 1538 // BrowserView, TabStripModelObserver implementation:
1542 1539
1543 void BrowserView::TabInsertedAt(TabStripModel* tab_strip_model, 1540 void BrowserView::TabInsertedAt(TabStripModel* tab_strip_model,
1544 WebContents* contents, 1541 WebContents* contents,
1545 int index, 1542 int index,
1546 bool foreground) { 1543 bool foreground) {
1547 #if defined(USE_AURA) 1544 #if defined(USE_AURA)
1548 // WebContents inserted in tabs might not have been added to the root 1545 // WebContents inserted in tabs might not have been added to the root
1549 // window yet. Per http://crbug/342672 add them now since drawing the 1546 // window yet. Per http://crbug/342672 add them now since drawing the
(...skipping 1112 matching lines...) Expand 10 before | Expand all | Expand 10 after
2662 } 2659 }
2663 2660
2664 extensions::ActiveTabPermissionGranter* 2661 extensions::ActiveTabPermissionGranter*
2665 BrowserView::GetActiveTabPermissionGranter() { 2662 BrowserView::GetActiveTabPermissionGranter() {
2666 content::WebContents* web_contents = GetActiveWebContents(); 2663 content::WebContents* web_contents = GetActiveWebContents();
2667 if (!web_contents) 2664 if (!web_contents)
2668 return nullptr; 2665 return nullptr;
2669 return extensions::TabHelper::FromWebContents(web_contents) 2666 return extensions::TabHelper::FromWebContents(web_contents)
2670 ->active_tab_permission_granter(); 2667 ->active_tab_permission_granter();
2671 } 2668 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698