| Index: ui/views/controls/button/vector_icon_button.cc
|
| diff --git a/ui/views/controls/button/vector_icon_button.cc b/ui/views/controls/button/vector_icon_button.cc
|
| index 2c6b70d4b350a66f248832038e87c7dff543bdb3..b3dbca975e4e8ed90c29dc93d6ece94d6a7ec8f6 100644
|
| --- a/ui/views/controls/button/vector_icon_button.cc
|
| +++ b/ui/views/controls/button/vector_icon_button.cc
|
| @@ -44,10 +44,19 @@ void VectorIconButton::SetIcon(gfx::VectorIconId id) {
|
| }
|
| }
|
|
|
| +void VectorIconButton::SetIcon(const gfx::VectorIcon& icon) {
|
| + icon_ = &icon;
|
| + SetIcon(gfx::VectorIconId::VECTOR_ICON_NONE);
|
| +}
|
| +
|
| void VectorIconButton::OnThemeChanged() {
|
| SkColor icon_color =
|
| color_utils::DeriveDefaultIconColor(delegate_->GetVectorIconBaseColor());
|
| - gfx::ImageSkia image = gfx::CreateVectorIcon(id_, icon_color);
|
| + gfx::ImageSkia image;
|
| + if (icon_)
|
| + image = gfx::CreateVectorIcon(*icon_, icon_color);
|
| + else
|
| + image = gfx::CreateVectorIcon(id_, icon_color);
|
| SetImage(views::CustomButton::STATE_NORMAL, &image);
|
| image = gfx::CreateVectorIcon(id_, SkColorSetA(icon_color, 0xff / 2));
|
| SetImage(views::CustomButton::STATE_DISABLED, &image);
|
|
|