| Index: ui/views/controls/button/label_button.cc
|
| diff --git a/ui/views/controls/button/label_button.cc b/ui/views/controls/button/label_button.cc
|
| index f5b07e474368a2d8484444a0ed37887ddf5a3ff0..5a3414d8960fc5b83eeb80bcf9b801dc0c27cb13 100644
|
| --- a/ui/views/controls/button/label_button.cc
|
| +++ b/ui/views/controls/button/label_button.cc
|
| @@ -36,6 +36,21 @@ const SkColor kStyleButtonTextColor = SK_ColorBLACK;
|
| const SkColor kStyleButtonShadowColor = SK_ColorWHITE;
|
| #endif
|
|
|
| +gfx::Font::Weight GetValueBolderThan(gfx::Font::Weight weight) {
|
| + if (weight < gfx::Font::Weight::BOLD)
|
| + return gfx::Font::Weight::BOLD;
|
| + switch (weight) {
|
| + case gfx::Font::Weight::BOLD:
|
| + return gfx::Font::Weight::EXTRA_BOLD;
|
| + case gfx::Font::Weight::EXTRA_BOLD:
|
| + case gfx::Font::Weight::BLACK:
|
| + return gfx::Font::Weight::BLACK;
|
| + default:
|
| + NOTREACHED();
|
| + }
|
| + return gfx::Font::Weight::INVALID;
|
| +}
|
| +
|
| const gfx::FontList& GetDefaultNormalFontList() {
|
| static base::LazyInstance<gfx::FontList>::Leaky font_list =
|
| LAZY_INSTANCE_INITIALIZER;
|
| @@ -45,11 +60,11 @@ const gfx::FontList& GetDefaultNormalFontList() {
|
| const gfx::FontList& GetDefaultBoldFontList() {
|
| static base::LazyInstance<gfx::FontList>::Leaky font_list =
|
| LAZY_INSTANCE_INITIALIZER;
|
| - if ((font_list.Get().GetFontStyle() & gfx::Font::BOLD) == 0) {
|
| - font_list.Get() = font_list.Get().
|
| - DeriveWithStyle(font_list.Get().GetFontStyle() | gfx::Font::BOLD);
|
| - DCHECK_NE(font_list.Get().GetFontStyle() & gfx::Font::BOLD, 0);
|
| - }
|
| +
|
| + font_list.Get() = font_list.Get().DeriveWithWeight(
|
| + GetValueBolderThan(font_list.Get().GetFontWeight()));
|
| + DCHECK_GE(font_list.Get().GetFontWeight(), gfx::Font::Weight::BOLD);
|
| +
|
| return font_list.Get();
|
| }
|
|
|
| @@ -163,10 +178,10 @@ const gfx::FontList& LabelButton::GetFontList() const {
|
|
|
| void LabelButton::SetFontList(const gfx::FontList& font_list) {
|
| cached_normal_font_list_ = font_list;
|
| - cached_bold_font_list_ = font_list.DeriveWithStyle(
|
| - font_list.GetFontStyle() | gfx::Font::BOLD);
|
| - label_->SetFontList(is_default_ ?
|
| - cached_bold_font_list_ : cached_normal_font_list_);
|
| + cached_bold_font_list_ =
|
| + font_list.DeriveWithWeight(GetValueBolderThan(font_list.GetFontWeight()));
|
| + label_->SetFontList(is_default_ ? cached_bold_font_list_
|
| + : cached_normal_font_list_);
|
| }
|
|
|
| void LabelButton::SetElideBehavior(gfx::ElideBehavior elide_behavior) {
|
|
|