Index: chrome/browser/ui/views/infobars/infobar_view.cc |
diff --git a/chrome/browser/ui/views/infobars/infobar_view.cc b/chrome/browser/ui/views/infobars/infobar_view.cc |
index 55f4e611174bb597c726eaef7d8ad4d6b30a299e..b3cd2e2a6153e011364572bd1b5d2ba8224c1e41 100644 |
--- a/chrome/browser/ui/views/infobars/infobar_view.cc |
+++ b/chrome/browser/ui/views/infobars/infobar_view.cc |
@@ -32,6 +32,7 @@ |
#include "ui/views/controls/button/image_button.h" |
#include "ui/views/controls/button/label_button.h" |
#include "ui/views/controls/button/label_button_border.h" |
+#include "ui/views/controls/button/md_text_button.h" |
#include "ui/views/controls/button/menu_button.h" |
#include "ui/views/controls/image_view.h" |
#include "ui/views/controls/label.h" |
@@ -113,35 +114,41 @@ views::Link* InfoBarView::CreateLink(const base::string16& text, |
} |
// static |
+views::Button* InfoBarView::CreateTextButton( |
+ views::ButtonListener* listener, |
+ const base::string16& text) { |
+ if (!ui::MaterialDesignController::IsModeMaterial()) |
+ return CreateLabelButton(listener, text); |
+ |
+ return new views::MdTextButton(listener, text); |
+} |
+ |
+// static |
views::LabelButton* InfoBarView::CreateLabelButton( |
views::ButtonListener* listener, |
const base::string16& text) { |
views::LabelButton* button = new views::LabelButton(listener, text); |
- if (ui::MaterialDesignController::IsModeMaterial()) { |
- button->SetStyle(views::Button::STYLE_BUTTON); |
- } else { |
- scoped_ptr<views::LabelButtonAssetBorder> button_border( |
- new views::LabelButtonAssetBorder(views::Button::STYLE_TEXTBUTTON)); |
- const int kNormalImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_NORMAL); |
- button_border->SetPainter( |
- false, views::Button::STATE_NORMAL, |
- views::Painter::CreateImageGridPainter(kNormalImageSet)); |
- const int kHoveredImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_HOVER); |
- button_border->SetPainter( |
- false, views::Button::STATE_HOVERED, |
- views::Painter::CreateImageGridPainter(kHoveredImageSet)); |
- const int kPressedImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_PRESSED); |
- button_border->SetPainter( |
- false, views::Button::STATE_PRESSED, |
- views::Painter::CreateImageGridPainter(kPressedImageSet)); |
- |
- button->SetBorder(std::move(button_border)); |
- button->set_animate_on_state_change(false); |
- button->SetTextColor(views::Button::STATE_NORMAL, GetInfobarTextColor()); |
- button->SetTextColor(views::Button::STATE_HOVERED, GetInfobarTextColor()); |
- ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); |
- button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont)); |
- } |
+ scoped_ptr<views::LabelButtonAssetBorder> button_border( |
+ new views::LabelButtonAssetBorder(views::Button::STYLE_TEXTBUTTON)); |
+ const int kNormalImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_NORMAL); |
+ button_border->SetPainter( |
+ false, views::Button::STATE_NORMAL, |
+ views::Painter::CreateImageGridPainter(kNormalImageSet)); |
+ const int kHoveredImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_HOVER); |
+ button_border->SetPainter( |
+ false, views::Button::STATE_HOVERED, |
+ views::Painter::CreateImageGridPainter(kHoveredImageSet)); |
+ const int kPressedImageSet[] = IMAGE_GRID(IDR_INFOBARBUTTON_PRESSED); |
+ button_border->SetPainter( |
+ false, views::Button::STATE_PRESSED, |
+ views::Painter::CreateImageGridPainter(kPressedImageSet)); |
+ |
+ button->SetBorder(std::move(button_border)); |
+ button->set_animate_on_state_change(false); |
+ button->SetTextColor(views::Button::STATE_NORMAL, GetInfobarTextColor()); |
+ button->SetTextColor(views::Button::STATE_HOVERED, GetInfobarTextColor()); |
+ ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); |
+ button->SetFontList(rb.GetFontList(ui::ResourceBundle::MediumFont)); |
button->SetFocusable(true); |
return button; |
} |