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

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

Issue 1448433004: [MD] update EV bubble icon and location bar https icons (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: update 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
Index: chrome/browser/ui/views/location_bar/icon_label_bubble_view.cc
diff --git a/chrome/browser/ui/views/location_bar/icon_label_bubble_view.cc b/chrome/browser/ui/views/location_bar/icon_label_bubble_view.cc
index f6a1d472cd322f17b5624c34bfb4c41aacb2e132..42fad880720294ea4089ea99a98d9954f79a8150 100644
--- a/chrome/browser/ui/views/location_bar/icon_label_bubble_view.cc
+++ b/chrome/browser/ui/views/location_bar/icon_label_bubble_view.cc
@@ -11,6 +11,7 @@
#include "ui/base/resource/resource_bundle.h"
#include "ui/gfx/canvas.h"
#include "ui/gfx/color_utils.h"
+#include "ui/native_theme/native_theme.h"
#include "ui/views/controls/image_view.h"
#include "ui/views/painter.h"
@@ -122,8 +123,7 @@ void IconLabelBubbleView::OnNativeThemeChanged(
label_->SetEnabledColor(GetTextColor());
- bool inverted =
- color_utils::GetLuminanceForColor(parent_background_color_) < 128;
+ bool inverted = IsInvertedColorScheme();
SkColor border_color = inverted ? SK_ColorWHITE : GetBorderColor();
SkColor background_color =
inverted ? SK_ColorWHITE : SkColorSetA(border_color, 0x13);
@@ -132,6 +132,11 @@ void IconLabelBubbleView::OnNativeThemeChanged(
SetLabelBackgroundColor(background_color);
}
+bool IconLabelBubbleView::IsInvertedColorScheme() const {
+ return color_utils::IsDark(GetNativeTheme()->GetSystemColor(
+ ui::NativeTheme::kColorId_TextfieldDefaultBackground));
Peter Kasting 2015/11/17 21:27:03 The code to get this background color is repeated
Evan Stade 2015/11/17 22:57:21 Done.
+}
+
gfx::Size IconLabelBubbleView::GetSizeForLabelWidth(int width) const {
gfx::Size size(image_->GetPreferredSize());
if (ShouldShowBackground()) {
@@ -165,17 +170,22 @@ int IconLabelBubbleView::GetBubbleOuterPaddingMd(bool leading) const {
}
void IconLabelBubbleView::SetLabelBackgroundColor(
- SkColor background_image_color) {
+ SkColor chip_background_color) {
+ SkColor parent_background_color =
+ ui::MaterialDesignController::IsModeMaterial()
+ ? GetNativeTheme()->GetSystemColor(
+ ui::NativeTheme::kColorId_TextfieldDefaultBackground)
+ : parent_background_color_;
// The background images are painted atop |parent_background_color_|.
- // Alpha-blend |background_image_color| with |parent_background_color_| to
+ // Alpha-blend |chip_background_color| with |parent_background_color_| to
// determine the actual color the label text will sit atop.
- // Tricky bit: We alpha blend an opaque version of |background_image_color|
+ // Tricky bit: We alpha blend an opaque version of |chip_background_color|
// against |parent_background_color_| using the original image grid color's
// alpha. This is because AlphaBlend(a, b, 255) always returns |a| unchanged
// even if |a| is a color with non-255 alpha.
label_->SetBackgroundColor(color_utils::AlphaBlend(
- SkColorSetA(background_image_color, 255), parent_background_color_,
- SkColorGetA(background_image_color)));
+ SkColorSetA(chip_background_color, 255), parent_background_color,
+ SkColorGetA(chip_background_color)));
}
const char* IconLabelBubbleView::GetClassName() const {

Powered by Google App Engine
This is Rietveld 408576698