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

Unified Diff: chrome/browser/ui/views/location_bar/location_bar_view.cc

Issue 1394763003: Update LocationBarView Background (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update nomenclature Created 5 years, 1 month 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
« no previous file with comments | « chrome/browser/ui/views/location_bar/background_with_1_px_border.cc ('k') | chrome/chrome_browser_ui.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/views/location_bar/location_bar_view.cc
diff --git a/chrome/browser/ui/views/location_bar/location_bar_view.cc b/chrome/browser/ui/views/location_bar/location_bar_view.cc
index 21d452b9480a8250e51afad90ff43aa037de56c0..9d19ce3b25a624e5f69cff4df39210adeb33c9f4 100644
--- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
+++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
@@ -38,6 +38,7 @@
#include "chrome/browser/ui/view_ids.h"
#include "chrome/browser/ui/views/browser_dialogs.h"
#include "chrome/browser/ui/views/layout_constants.h"
+#include "chrome/browser/ui/views/location_bar/background_with_1_px_border.h"
#include "chrome/browser/ui/views/location_bar/content_setting_image_view.h"
#include "chrome/browser/ui/views/location_bar/ev_bubble_view.h"
#include "chrome/browser/ui/views/location_bar/keyword_hint_view.h"
@@ -116,11 +117,7 @@ int GetEditLeadingInternalSpace() {
// static
-// TODO(jonross): Replace with lookup once Material Design asset has landed.
-// (https://crbug.com/495654)
-// Thickness of the edges of the omnibox background images, for normal and
-// popup windows.
-const int kNormalEdgeThickness = 2;
+// Thickness of the edges of the omnibox background images, for popup windows.
const int kPopupEdgeThickness = 1;
const char LocationBarView::kViewClassName[] = "LocationBarView";
@@ -164,6 +161,12 @@ LocationBarView::LocationBarView(Browser* browser,
ui_zoom::ZoomEventManager::GetForBrowserContext(profile)
->AddZoomEventManagerObserver(this);
+
+ if (ui::MaterialDesignController::IsModeMaterial()) {
+ set_background(new BackgroundWith1PxBorder(
+ GetColor(SecurityStateModel::NONE, BACKGROUND),
+ SkColorSetARGB(0x4D, 0x00, 0x00, 0x00), is_popup_mode_));
+ }
}
LocationBarView::~LocationBarView() {
@@ -513,7 +516,8 @@ void LocationBarView::GetOmniboxPopupPositioningInfo(
*popup_width = parent()->width();
gfx::Rect location_bar_bounds(bounds());
- location_bar_bounds.Inset(kNormalEdgeThickness, 0);
+ location_bar_bounds.Inset(GetLayoutConstant(LOCATION_BAR_BORDER_THICKNESS),
+ 0);
*left_margin = location_bar_bounds.x();
*right_margin = *popup_width - location_bar_bounds.right();
}
@@ -885,10 +889,8 @@ int LocationBarView::GetHorizontalEdgeThickness() const {
}
int LocationBarView::GetVerticalEdgeThickness() const {
- // In Material Design vertical layout disregards the border.
- if (ui::MaterialDesignController::IsModeMaterial())
- return 0;
- return is_popup_mode_ ? kPopupEdgeThickness : kNormalEdgeThickness;
+ return is_popup_mode_ ? kPopupEdgeThickness
+ : GetLayoutConstant(LOCATION_BAR_BORDER_THICKNESS);
}
int LocationBarView::VerticalPadding() const {
@@ -1289,6 +1291,9 @@ void LocationBarView::OnFocus() {
void LocationBarView::OnPaint(gfx::Canvas* canvas) {
View::OnPaint(canvas);
+ if (ui::MaterialDesignController::IsModeMaterial())
+ return; // The background and border are painted by our Background.
+
// Fill the location bar background color behind the border. Parts of the
// border images are meant to rest atop the toolbar background and parts atop
// the omnibox background, so we can't just blindly fill our entire bounds.
@@ -1321,36 +1326,17 @@ void LocationBarView::PaintChildren(const ui::PaintContext& context) {
if (show_focus_rect_ && HasFocus())
recorder.canvas()->DrawFocusRect(omnibox_view_->bounds());
+ if (ui::MaterialDesignController::IsModeMaterial())
+ return; // The background and border are painted by our Background.
+
// Maximized popup windows don't draw the horizontal edges. We implement this
// by simply expanding the paint area outside the view by the edge thickness.
gfx::Rect border_rect(GetContentsBounds());
if (is_popup_mode_ && (GetHorizontalEdgeThickness() == 0))
border_rect.Inset(-kPopupEdgeThickness, 0);
- if (ui::MaterialDesignController::IsModeMaterial()) {
- gfx::Canvas* canvas = recorder.canvas();
- gfx::ScopedCanvas scoped_canvas(canvas);
- const float scale = canvas->UndoDeviceScaleFactor();
-
- SkPaint paint;
- paint.setStyle(SkPaint::Style::kStroke_Style);
- paint.setColor(SkColorSetARGB(0x40, 0x00, 0x00, 0x00));
- paint.setStrokeWidth(1);
- paint.setAntiAlias(true);
-
- const float kOffset = 0.5f;
- gfx::RectF border_rect_f(border_rect);
- border_rect_f.Scale(scale);
- gfx::InsetsF insets(kOffset, kOffset, kOffset, kOffset);
- border_rect_f.Inset(insets);
-
- const SkScalar kCornerRadius = SkDoubleToScalar(2.5f * scale);
- canvas->sk_canvas()->drawRoundRect(gfx::RectFToSkRect(border_rect_f),
- kCornerRadius, kCornerRadius, paint);
- } else {
- views::Painter::PaintPainterAt(recorder.canvas(), border_painter_.get(),
- border_rect);
- }
+ views::Painter::PaintPainterAt(recorder.canvas(), border_painter_.get(),
+ border_rect);
}
////////////////////////////////////////////////////////////////////////////////
« no previous file with comments | « chrome/browser/ui/views/location_bar/background_with_1_px_border.cc ('k') | chrome/chrome_browser_ui.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698