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

Unified Diff: chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc

Issue 1393163002: Update app menu button MD colors for the notification case. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc
diff --git a/chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc b/chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc
index 5ee206ed82127c05d72723e9c0072f08e10560ae..647ab5af03501ea9c6052c8121ae6185ba5a0cb9 100644
--- a/chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc
+++ b/chrome/browser/ui/views/toolbar/wrench_toolbar_button.cc
@@ -8,6 +8,7 @@
#include "base/single_thread_task_runner.h"
#include "base/thread_task_runner_handle.h"
#include "base/time/time.h"
+#include "chrome/browser/themes/theme_properties.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/toolbar/wrench_menu_model.h"
#include "chrome/browser/ui/views/extensions/browser_action_drag_data.h"
@@ -19,6 +20,9 @@
#include "ui/base/resource/material_design/material_design_controller.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/base/theme_provider.h"
+#include "ui/gfx/color_palette.h"
+#include "ui/gfx/paint_vector_icon.h"
+#include "ui/gfx/vector_icons_public.h"
#include "ui/keyboard/keyboard_controller.h"
#include "ui/views/controls/button/label_button_border.h"
#include "ui/views/controls/menu/menu_listener.h"
@@ -30,7 +34,7 @@ bool WrenchToolbarButton::g_open_app_immediately_for_testing = false;
WrenchToolbarButton::WrenchToolbarButton(ToolbarView* toolbar_view)
: views::MenuButton(NULL, base::string16(), toolbar_view, false),
- wrench_icon_painter_(nullptr),
+ severity_(WrenchIconPainter::SEVERITY_NONE),
toolbar_view_(toolbar_view),
allow_extension_dragging_(
extensions::FeatureSwitch::extension_action_redesign()
@@ -45,8 +49,11 @@ WrenchToolbarButton::~WrenchToolbarButton() {
void WrenchToolbarButton::SetSeverity(WrenchIconPainter::Severity severity,
bool animate) {
- if (ui::MaterialDesignController::IsModeMaterial())
+ if (ui::MaterialDesignController::IsModeMaterial()) {
+ severity_ = severity;
+ UpdateIcon();
return;
+ }
wrench_icon_painter_->SetSeverity(severity, animate);
SchedulePaint();
@@ -113,6 +120,31 @@ void WrenchToolbarButton::ScheduleWrenchIconPaint() {
SchedulePaint();
}
+void WrenchToolbarButton::UpdateIcon() {
+ DCHECK(ui::MaterialDesignController::IsModeMaterial());
+ SkColor color = SK_ColorRED;
+ switch (severity_) {
+ case WrenchIconPainter::SEVERITY_NONE:
+ color = GetThemeProvider()->GetColor(
+ ThemeProperties::COLOR_TOOLBAR_BUTTON_ICON);
+ break;
+ case WrenchIconPainter::SEVERITY_LOW:
+ color = gfx::kGoogleGreen700;
+ break;
+ case WrenchIconPainter::SEVERITY_MEDIUM:
+ color = gfx::kGoogleYellow700;
+ break;
+ case WrenchIconPainter::SEVERITY_HIGH:
+ color = gfx::kGoogleRed700;
+ break;
+ }
+
+ const int kButtonSize = 16;
Evan Stade 2015/10/07 21:59:17 (in the future this should move to layout_constant
sky 2015/10/07 23:41:52 How about a TODO then?
Evan Stade 2015/10/08 00:03:31 Done.
+ SetImage(views::Button::STATE_NORMAL,
+ gfx::CreateVectorIcon(gfx::VectorIconId::BROWSER_TOOLS, kButtonSize,
+ color));
+}
+
const char* WrenchToolbarButton::GetClassName() const {
return "WrenchToolbarButton";
}

Powered by Google App Engine
This is Rietveld 408576698