Commit f0b16e9f authored by Maria Villarreal's avatar Maria Villarreal Committed by Commit Bot

Eliminate hardcoded SkColorSet* use from menu_item_view

Per guidance, this change splits the alert color from one color ID
into two and places the alpha values into the two of them.
Then this uses a color tween.

Bug: 1056950
Change-Id: I8e9f7c4e34ef90a684c2d6b651064e717a447eb3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2111472
Commit-Queue: Maria Villarreal <mavill@microsoft.com>
Reviewed-by: default avatarPeter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/master@{#752274}
parent 3014d931
...@@ -101,7 +101,8 @@ base::Optional<SkColor> SkColorFromColorId( ...@@ -101,7 +101,8 @@ base::Optional<SkColor> SkColorFromColorId(
// Menu // Menu
case ui::NativeTheme::kColorId_MenuBackgroundColor: case ui::NativeTheme::kColorId_MenuBackgroundColor:
case ui::NativeTheme::kColorId_HighlightedMenuItemBackgroundColor: case ui::NativeTheme::kColorId_HighlightedMenuItemBackgroundColor:
case ui::NativeTheme::kColorId_MenuItemAlertBackgroundColor: case ui::NativeTheme::kColorId_MenuItemInitialAlertBackgroundColor:
case ui::NativeTheme::kColorId_MenuItemTargetAlertBackgroundColor:
return GetBgColor("GtkMenu#menu"); return GetBgColor("GtkMenu#menu");
case ui::NativeTheme::kColorId_MenuBorderColor: case ui::NativeTheme::kColorId_MenuBorderColor:
return GetBorderColor("GtkMenu#menu"); return GetBorderColor("GtkMenu#menu");
......
...@@ -62,8 +62,10 @@ ...@@ -62,8 +62,10 @@
E(kColorLinkPressedForeground, NativeTheme::kColorId_LinkPressed) \ E(kColorLinkPressedForeground, NativeTheme::kColorId_LinkPressed) \
E(kColorMenuBackground, NativeTheme::kColorId_MenuBackgroundColor) \ E(kColorMenuBackground, NativeTheme::kColorId_MenuBackgroundColor) \
E(kColorMenuBorder, NativeTheme::kColorId_MenuBorderColor) \ E(kColorMenuBorder, NativeTheme::kColorId_MenuBorderColor) \
E(kColorMenuItemAlertedBackground, \ E(kColorMenuItemBackgroundAlertedInitial, \
NativeTheme::kColorId_MenuItemAlertBackgroundColor) \ NativeTheme::kColorId_MenuItemInitialAlertBackgroundColor) \
E(kColorMenuItemBackgroundAlertedTarget, \
NativeTheme::kColorId_MenuItemTargetAlertBackgroundColor) \
E(kColorMenuItemDisabledForeground, \ E(kColorMenuItemDisabledForeground, \
NativeTheme::kColorId_DisabledMenuItemForegroundColor) \ NativeTheme::kColorId_DisabledMenuItemForegroundColor) \
E(kColorMenuItemForeground, \ E(kColorMenuItemForeground, \
......
...@@ -45,7 +45,8 @@ void AddUiColorMixers(ColorProvider* provider) { ...@@ -45,7 +45,8 @@ void AddUiColorMixers(ColorProvider* provider) {
mixer[kColorLinkForeground] = {kColorAccent}; mixer[kColorLinkForeground] = {kColorAccent};
mixer[kColorMenuBackground] = {kColorPrimaryBackground}; mixer[kColorMenuBackground] = {kColorPrimaryBackground};
mixer[kColorMenuBorder] = {kColorBorderAndSeparatorForeground}; mixer[kColorMenuBorder] = {kColorBorderAndSeparatorForeground};
mixer[kColorMenuItemAlertedBackground] = {kColorAccent}; mixer[kColorMenuItemBackgroundAlertedInitial] = SetAlpha(kColorAccent, 0x4D);
mixer[kColorMenuItemBackgroundAlertedTarget] = SetAlpha(kColorAccent, 0x1A);
mixer[kColorMenuItemDisabledForeground] = {kColorDisabledForeground}; mixer[kColorMenuItemDisabledForeground] = {kColorDisabledForeground};
mixer[kColorMenuItemForeground] = {kColorPrimaryForeground}; mixer[kColorMenuItemForeground] = {kColorPrimaryForeground};
mixer[kColorMenuItemHighlightedBackground] = {kColorSubtleEmphasisBackground}; mixer[kColorMenuItemHighlightedBackground] = {kColorSubtleEmphasisBackground};
......
...@@ -92,8 +92,10 @@ base::Optional<SkColor> GetDarkSchemeColor(NativeTheme::ColorId color_id) { ...@@ -92,8 +92,10 @@ base::Optional<SkColor> GetDarkSchemeColor(NativeTheme::ColorId color_id) {
return gfx::kGoogleGrey800; return gfx::kGoogleGrey800;
case NativeTheme::kColorId_HighlightedMenuItemBackgroundColor: case NativeTheme::kColorId_HighlightedMenuItemBackgroundColor:
return SkColorSetRGB(0x32, 0x36, 0x39); return SkColorSetRGB(0x32, 0x36, 0x39);
case NativeTheme::kColorId_MenuItemAlertBackgroundColor: case NativeTheme::kColorId_MenuItemInitialAlertBackgroundColor:
return gfx::kGoogleBlue300; return SkColorSetA(gfx::kGoogleBlue300, 0x4D);
case NativeTheme::kColorId_MenuItemTargetAlertBackgroundColor:
return SkColorSetA(gfx::kGoogleBlue300, 0x1A);
case NativeTheme::kColorId_MenuItemMinorTextColor: case NativeTheme::kColorId_MenuItemMinorTextColor:
return gfx::kGoogleGrey500; return gfx::kGoogleGrey500;
...@@ -295,8 +297,10 @@ SkColor GetDefaultColor(NativeTheme::ColorId color_id, ...@@ -295,8 +297,10 @@ SkColor GetDefaultColor(NativeTheme::ColorId color_id,
return gfx::kGoogleGrey700; return gfx::kGoogleGrey700;
case NativeTheme::kColorId_HighlightedMenuItemBackgroundColor: case NativeTheme::kColorId_HighlightedMenuItemBackgroundColor:
return gfx::kGoogleGrey050; return gfx::kGoogleGrey050;
case NativeTheme::kColorId_MenuItemAlertBackgroundColor: case NativeTheme::kColorId_MenuItemInitialAlertBackgroundColor:
return gfx::kGoogleBlue600; return SkColorSetA(gfx::kGoogleBlue600, 0x4D);
case NativeTheme::kColorId_MenuItemTargetAlertBackgroundColor:
return SkColorSetA(gfx::kGoogleBlue600, 0x1A);
// Dropdown // Dropdown
case NativeTheme::kColorId_DropdownBackgroundColor: case NativeTheme::kColorId_DropdownBackgroundColor:
......
...@@ -70,8 +70,10 @@ NativeThemeColorIdToColorIdMap() { ...@@ -70,8 +70,10 @@ NativeThemeColorIdToColorIdMap() {
{NTCID::kColorId_LinkPressed, kColorLinkPressedForeground}, {NTCID::kColorId_LinkPressed, kColorLinkPressedForeground},
{NTCID::kColorId_MenuBackgroundColor, kColorMenuBackground}, {NTCID::kColorId_MenuBackgroundColor, kColorMenuBackground},
{NTCID::kColorId_MenuBorderColor, kColorMenuBorder}, {NTCID::kColorId_MenuBorderColor, kColorMenuBorder},
{NTCID::kColorId_MenuItemAlertBackgroundColor, {NTCID::kColorId_MenuItemInitialAlertBackgroundColor,
kColorMenuItemAlertedBackground}, kColorMenuItemBackgroundAlertedInitial},
{NTCID::kColorId_MenuItemTargetAlertBackgroundColor,
kColorMenuItemBackgroundAlertedTarget},
{NTCID::kColorId_DisabledMenuItemForegroundColor, {NTCID::kColorId_DisabledMenuItemForegroundColor,
kColorMenuItemDisabledForeground}, kColorMenuItemDisabledForeground},
{NTCID::kColorId_EnabledMenuItemForegroundColor, {NTCID::kColorId_EnabledMenuItemForegroundColor,
......
...@@ -50,7 +50,8 @@ ...@@ -50,7 +50,8 @@
OP(kColorId_MenuBorderColor), \ OP(kColorId_MenuBorderColor), \
OP(kColorId_HighlightedMenuItemBackgroundColor), \ OP(kColorId_HighlightedMenuItemBackgroundColor), \
OP(kColorId_HighlightedMenuItemForegroundColor), \ OP(kColorId_HighlightedMenuItemForegroundColor), \
OP(kColorId_MenuItemAlertBackgroundColor), \ OP(kColorId_MenuItemInitialAlertBackgroundColor), \
OP(kColorId_MenuItemTargetAlertBackgroundColor), \
/* Dropdown */ \ /* Dropdown */ \
OP(kColorId_DropdownBackgroundColor), \ OP(kColorId_DropdownBackgroundColor), \
OP(kColorId_DropdownForegroundColor), \ OP(kColorId_DropdownForegroundColor), \
......
...@@ -1016,10 +1016,13 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas, ...@@ -1016,10 +1016,13 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas,
: ui::NativeTheme::kColorId_HighlightedMenuItemBackgroundColor; : ui::NativeTheme::kColorId_HighlightedMenuItemBackgroundColor;
color = GetNativeTheme()->GetSystemColor(color_id); color = GetNativeTheme()->GetSystemColor(color_id);
} else { } else {
color = GetNativeTheme()->GetSystemColor(
ui::NativeTheme::kColorId_MenuItemAlertBackgroundColor);
const auto* animation = GetMenuController()->GetAlertAnimation(); const auto* animation = GetMenuController()->GetAlertAnimation();
color = SkColorSetA(color, animation->CurrentValueBetween(0x4D, 0x1A)); color = gfx::Tween::ColorValueBetween(
animation->GetCurrentValue(),
GetNativeTheme()->GetSystemColor(
ui::NativeTheme::kColorId_MenuItemInitialAlertBackgroundColor),
GetNativeTheme()->GetSystemColor(
ui::NativeTheme::kColorId_MenuItemTargetAlertBackgroundColor));
} }
DCHECK_NE(color, gfx::kPlaceholderColor); DCHECK_NE(color, gfx::kPlaceholderColor);
......
...@@ -103,8 +103,10 @@ std::unique_ptr<View> CreateAllColorsView() { ...@@ -103,8 +103,10 @@ std::unique_ptr<View> CreateAllColorsView() {
COLOR_LABEL_ARGS(kColorId_HighlightedMenuItemBackgroundColor)); COLOR_LABEL_ARGS(kColorId_HighlightedMenuItemBackgroundColor));
InsertColorRow(layout, InsertColorRow(layout,
COLOR_LABEL_ARGS(kColorId_HighlightedMenuItemForegroundColor)); COLOR_LABEL_ARGS(kColorId_HighlightedMenuItemForegroundColor));
InsertColorRow(
layout, COLOR_LABEL_ARGS(kColorId_MenuItemInitialAlertBackgroundColor));
InsertColorRow(layout, InsertColorRow(layout,
COLOR_LABEL_ARGS(kColorId_MenuItemAlertBackgroundColor)); COLOR_LABEL_ARGS(kColorId_MenuItemTargetAlertBackgroundColor));
InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelEnabledColor)); InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelEnabledColor));
InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelDisabledColor)); InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelDisabledColor));
InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelSecondaryColor)); InsertColorRow(layout, COLOR_LABEL_ARGS(kColorId_LabelSecondaryColor));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment