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

Side by Side Diff: chrome/browser/ui/views/location_bar/location_bar_view.cc

Issue 1682373002: Misc. small changes in preparation for moving popup mode edge drawing. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix build Created 4 years, 10 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/location_bar/location_bar_view.h" 5 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <map> 8 #include <map>
9 9
10 #include "base/i18n/rtl.h" 10 #include "base/i18n/rtl.h"
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 94
95 #if !defined(OS_CHROMEOS) 95 #if !defined(OS_CHROMEOS)
96 #include "chrome/browser/ui/views/first_run_bubble.h" 96 #include "chrome/browser/ui/views/first_run_bubble.h"
97 #endif 97 #endif
98 98
99 using content::WebContents; 99 using content::WebContents;
100 using views::View; 100 using views::View;
101 101
102 namespace { 102 namespace {
103 103
104 // The border color for MD windows, as well as non-MD popup windows.
105 const SkColor kBorderColor = SkColorSetA(SK_ColorBLACK, 0x4D);
106
104 int GetEditLeadingInternalSpace() { 107 int GetEditLeadingInternalSpace() {
105 // The textfield has 1 px of whitespace before the text in the RTL case only. 108 // The textfield has 1 px of whitespace before the text in the RTL case only.
106 return base::i18n::IsRTL() ? 1 : 0; 109 return base::i18n::IsRTL() ? 1 : 0;
107 } 110 }
108 111
109 } // namespace 112 } // namespace
110 113
111 114
112 // LocationBarView ----------------------------------------------------------- 115 // LocationBarView -----------------------------------------------------------
113 116
114 // static 117 // static
115
116 const char LocationBarView::kViewClassName[] = "LocationBarView"; 118 const char LocationBarView::kViewClassName[] = "LocationBarView";
117 119
118 LocationBarView::LocationBarView(Browser* browser, 120 LocationBarView::LocationBarView(Browser* browser,
119 Profile* profile, 121 Profile* profile,
120 CommandUpdater* command_updater, 122 CommandUpdater* command_updater,
121 Delegate* delegate, 123 Delegate* delegate,
122 bool is_popup_mode) 124 bool is_popup_mode)
123 : LocationBar(profile), 125 : LocationBar(profile),
124 ChromeOmniboxEditController(command_updater), 126 ChromeOmniboxEditController(command_updater),
125 browser_(browser), 127 browser_(browser),
(...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 location_bounds.right(), location_bounds.y(), 778 location_bounds.right(), location_bounds.y(),
777 std::min(width, entry_width), location_bounds.height()); 779 std::min(width, entry_width), location_bounds.height());
778 } 780 }
779 omnibox_view_->SetBoundsRect(location_bounds); 781 omnibox_view_->SetBoundsRect(location_bounds);
780 } 782 }
781 783
782 void LocationBarView::OnNativeThemeChanged(const ui::NativeTheme* theme) { 784 void LocationBarView::OnNativeThemeChanged(const ui::NativeTheme* theme) {
783 if (ui::MaterialDesignController::IsModeMaterial()) { 785 if (ui::MaterialDesignController::IsModeMaterial()) {
784 RefreshLocationIcon(); 786 RefreshLocationIcon();
785 if (!is_popup_mode_) { 787 if (!is_popup_mode_) {
786 set_background(new BackgroundWith1PxBorder( 788 set_background(new BackgroundWith1PxBorder(GetColor(BACKGROUND),
787 GetColor(BACKGROUND), SkColorSetARGB(0x4D, 0x00, 0x00, 0x00))); 789 kBorderColor));
788 } 790 }
789 } 791 }
790 } 792 }
791 793
792 void LocationBarView::Update(const WebContents* contents) { 794 void LocationBarView::Update(const WebContents* contents) {
793 RefreshContentSettingViews(); 795 RefreshContentSettingViews();
794 RefreshZoomView(); 796 RefreshZoomView();
795 RefreshPageActionViews(); 797 RefreshPageActionViews();
796 RefreshTranslateIcon(); 798 RefreshTranslateIcon();
797 RefreshSaveCreditCardIconView(); 799 RefreshSaveCreditCardIconView();
(...skipping 466 matching lines...) Expand 10 before | Expand all | Expand 10 after
1264 1266
1265 if (ui::MaterialDesignController::IsModeMaterial() && !is_popup_mode_) 1267 if (ui::MaterialDesignController::IsModeMaterial() && !is_popup_mode_)
1266 return; // The background and border are painted by our Background. 1268 return; // The background and border are painted by our Background.
1267 1269
1268 // Fill the location bar background color behind the border. Parts of the 1270 // Fill the location bar background color behind the border. Parts of the
1269 // border images are meant to rest atop the toolbar background and parts atop 1271 // border images are meant to rest atop the toolbar background and parts atop
1270 // the omnibox background, so we can't just blindly fill our entire bounds. 1272 // the omnibox background, so we can't just blindly fill our entire bounds.
1271 gfx::Rect bounds(GetContentsBounds()); 1273 gfx::Rect bounds(GetContentsBounds());
1272 const int edge_thickness = GetEdgeThickness(); 1274 const int edge_thickness = GetEdgeThickness();
1273 bounds.Inset(edge_thickness, edge_thickness); 1275 bounds.Inset(edge_thickness, edge_thickness);
1274 SkColor color(GetColor(BACKGROUND)); 1276 SkColor background_color(GetColor(BACKGROUND));
1275 if (is_popup_mode_) { 1277 if (is_popup_mode_) {
1276 canvas->FillRect(bounds, color); 1278 canvas->FillRect(bounds, background_color);
1277 } else { 1279 } else {
1278 SkPaint paint; 1280 SkPaint paint;
1279 paint.setStyle(SkPaint::kFill_Style); 1281 paint.setStyle(SkPaint::kFill_Style);
1280 paint.setColor(color); 1282 paint.setColor(background_color);
1281 const int kBorderCornerRadius = 2; 1283 const int kBorderCornerRadius = 2;
1282 canvas->DrawRoundRect(bounds, kBorderCornerRadius, paint); 1284 canvas->DrawRoundRect(bounds, kBorderCornerRadius, paint);
1285 // The border itself will be drawn in PaintChildren() since it includes an
1286 // inner shadow which should be drawn over the contents.
1283 } 1287 }
1284
1285 // The border itself will be drawn in PaintChildren() since it includes an
1286 // inner shadow which should be drawn over the contents.
1287 } 1288 }
1288 1289
1289 void LocationBarView::PaintChildren(const ui::PaintContext& context) { 1290 void LocationBarView::PaintChildren(const ui::PaintContext& context) {
1290 View::PaintChildren(context); 1291 View::PaintChildren(context);
1291 1292
1292 ui::PaintRecorder recorder(context, size()); 1293 ui::PaintRecorder recorder(context, size());
1293 1294
1294 // For non-InstantExtendedAPI cases, if necessary, show focus rect. As we need 1295 // For non-InstantExtendedAPI cases, if necessary, show focus rect. As we need
1295 // the focus rect to appear on top of children we paint here rather than 1296 // the focus rect to appear on top of children we paint here rather than
1296 // OnPaint(). 1297 // OnPaint().
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
1377 // LocationBarView, private TemplateURLServiceObserver implementation: 1378 // LocationBarView, private TemplateURLServiceObserver implementation:
1378 1379
1379 void LocationBarView::OnTemplateURLServiceChanged() { 1380 void LocationBarView::OnTemplateURLServiceChanged() {
1380 template_url_service_->RemoveObserver(this); 1381 template_url_service_->RemoveObserver(this);
1381 template_url_service_ = nullptr; 1382 template_url_service_ = nullptr;
1382 // If the browser is no longer active, let's not show the info bubble, as this 1383 // If the browser is no longer active, let's not show the info bubble, as this
1383 // would make the browser the active window again. 1384 // would make the browser the active window again.
1384 if (omnibox_view_ && omnibox_view_->GetWidget()->IsActive()) 1385 if (omnibox_view_ && omnibox_view_->GetWidget()->IsActive())
1385 ShowFirstRunBubble(); 1386 ShowFirstRunBubble();
1386 } 1387 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/location_bar/location_bar_view.h ('k') | chrome/browser/ui/views/toolbar/toolbar_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698