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

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

Issue 2001433002: Update appearance of omnibox focus for MD. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: share constant Created 4 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/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 6b4235d1f1b8bcacf45da01c17582ccdf9de49a4..efa5e3d00b3637dd309b5d1eb71181f96160731b 100644
--- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
+++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
@@ -1258,16 +1258,28 @@ void LocationBarView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
}
void LocationBarView::OnFocus() {
- // Explicitly focus the omnibox so a focus ring will be displayed around it on
- // Windows.
omnibox_view_->SetFocus();
}
void LocationBarView::OnPaint(gfx::Canvas* canvas) {
View::OnPaint(canvas);
- if (ui::MaterialDesignController::IsModeMaterial() && !is_popup_mode_)
- return; // The background and border are painted by our Background.
+ if (ui::MaterialDesignController::IsModeMaterial()) {
+ if (show_focus_rect_ && omnibox_view_->HasFocus()) {
+ SkPaint paint;
+ paint.setAntiAlias(true);
+ paint.setColor(GetNativeTheme()->GetSystemColor(
+ ui::NativeTheme::NativeTheme::kColorId_FocusedBorderColor));
+ paint.setStyle(SkPaint::kStroke_Style);
+ paint.setStrokeWidth(1);
+ gfx::RectF focus_rect(GetLocalBounds());
+ focus_rect.Inset(gfx::InsetsF(0.5f));
+ canvas->DrawRoundRect(focus_rect, BackgroundWith1PxBorder::kCornerRadius,
+ paint);
+ }
+ if (!is_popup_mode_)
+ 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
@@ -1295,14 +1307,14 @@ void LocationBarView::OnPaint(gfx::Canvas* canvas) {
void LocationBarView::PaintChildren(const ui::PaintContext& context) {
View::PaintChildren(context);
-
ui::PaintRecorder recorder(context, size());
// For non-InstantExtendedAPI cases, if necessary, show focus rect. As we need
// the focus rect to appear on top of children we paint here rather than
// OnPaint().
// Note: |Canvas::DrawFocusRect| paints a dashed rect with gray color.
- if (show_focus_rect_ && HasFocus())
+ if (!ui::MaterialDesignController::IsModeMaterial() && show_focus_rect_ &&
+ HasFocus())
recorder.canvas()->DrawFocusRect(omnibox_view_->bounds());
if (!ui::MaterialDesignController::IsModeMaterial() && !is_popup_mode_) {
@@ -1365,10 +1377,6 @@ void LocationBarView::OnChanged() {
SchedulePaint();
}
-void LocationBarView::OnSetFocus() {
- GetFocusManager()->SetFocusedView(this);
-}
-
const ToolbarModel* LocationBarView::GetToolbarModel() const {
return delegate_->GetToolbarModel();
}
« no previous file with comments | « chrome/browser/ui/views/location_bar/location_bar_view.h ('k') | chrome/browser/ui/views/omnibox/omnibox_view_views.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698