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

Unified Diff: chrome/browser/ui/views/infobars/infobar_view.cc

Issue 1525163004: First stab at MD text buttons (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: self review Created 5 years 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/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 c454d426ff8203ef096b9fdc9e7a4231459c8a06..0a6eb506c5eef9161d84c1e0f873bb24052ed48e 100644
--- a/chrome/browser/ui/views/infobars/infobar_view.cc
+++ b/chrome/browser/ui/views/infobars/infobar_view.cc
@@ -31,6 +31,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"
@@ -112,35 +113,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(button_border.Pass());
- 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;
}

Powered by Google App Engine
This is Rietveld 408576698