diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-02 00:01:39 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-02 00:01:39 +0000 |
commit | 13cbec67339b2a7577f193a5c64e8a7d53ca2c9b (patch) | |
tree | 1a4ffe8be2b24670f33db0bca77b417d4de20d6d /chrome/browser/themes | |
parent | 3aa12530b0f3fe0ff15b017cfe8b6e0e76019532 (diff) | |
download | chromium_src-13cbec67339b2a7577f193a5c64e8a7d53ca2c9b.zip chromium_src-13cbec67339b2a7577f193a5c64e8a7d53ca2c9b.tar.gz chromium_src-13cbec67339b2a7577f193a5c64e8a7d53ca2c9b.tar.bz2 |
Make NTP look good with themes.
BUG=52913
TEST=Visual inspection.
Review URL: http://codereview.chromium.org/3340005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58272 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/themes')
-rw-r--r-- | chrome/browser/themes/browser_theme_provider.cc | 32 | ||||
-rw-r--r-- | chrome/browser/themes/browser_theme_provider.h | 12 |
2 files changed, 28 insertions, 16 deletions
diff --git a/chrome/browser/themes/browser_theme_provider.cc b/chrome/browser/themes/browser_theme_provider.cc index 04075a8..7283a71 100644 --- a/chrome/browser/themes/browser_theme_provider.cc +++ b/chrome/browser/themes/browser_theme_provider.cc @@ -43,6 +43,13 @@ SkColor TintForUnderline(SkColor input) { return SkColorSetA(input, SkColorGetA(input) / 3); } +SkColor IncreaseLightness(SkColor color, double percent) { + color_utils::HSL result; + color_utils::SkColorToHSL(color, &result); + result.l += (1 - result.l) * percent; + return color_utils::HSLToSkColor(result, SkColorGetA(color)); +} + // Default colors. const SkColor kDefaultColorFrame = SkColorSetRGB(66, 116, 201); const SkColor kDefaultColorFrameInactive = SkColorSetRGB(161, 182, 228); @@ -79,10 +86,6 @@ const SkColor kDefaultColorNTPHeader = SkColorSetRGB(75, 140, 220); const SkColor kDefaultColorNTPSection = SkColorSetRGB(229, 239, 254); const SkColor kDefaultColorNTPSectionText = SK_ColorBLACK; const SkColor kDefaultColorNTPSectionLink = SkColorSetRGB(6, 55, 116); -const SkColor kDefaultColorNTPSectionHeaderText = SkColorSetRGB(76, 76, 76); -const SkColor kDefaultColorNTPSectionHeaderRule = SkColorSetRGB(179, 179, 179); -const SkColor kDefaultColorNTPSectionHeaderRuleLight = - SkColorSetRGB(220, 220, 220); const SkColor kDefaultColorControlBackground = SkColorSetARGB(0, 0, 0, 0); const SkColor kDefaultColorButtonBackground = SkColorSetARGB(0, 0, 0, 0); #if defined(OS_MACOSX) @@ -224,6 +227,19 @@ SkColor BrowserThemeProvider::GetColor(int id) const { if (theme_pack_.get() && theme_pack_->GetColor(id, &color)) return color; + // For backward compat with older themes, some newer colors are generated from + // older ones if they are missing. + switch (id) { + case COLOR_NTP_SECTION_HEADER_TEXT: + return IncreaseLightness(GetColor(COLOR_NTP_TEXT), 0.30); + case COLOR_NTP_SECTION_HEADER_TEXT_HOVER: + return GetColor(COLOR_NTP_TEXT); + case COLOR_NTP_SECTION_HEADER_RULE: + return IncreaseLightness(GetColor(COLOR_NTP_TEXT), 0.70); + case COLOR_NTP_SECTION_HEADER_RULE_LIGHT: + return IncreaseLightness(GetColor(COLOR_NTP_TEXT), 0.86); + } + return GetDefaultColor(id); } @@ -448,14 +464,6 @@ SkColor BrowserThemeProvider::GetDefaultColor(int id) { return kDefaultColorNTPSectionLink; case COLOR_NTP_SECTION_LINK_UNDERLINE: return TintForUnderline(kDefaultColorNTPSectionLink); - case COLOR_NTP_SECTION_HEADER_TEXT: - return kDefaultColorNTPSectionHeaderText; - case COLOR_NTP_SECTION_HEADER_TEXT_HOVER: - return kDefaultColorNTPText; - case COLOR_NTP_SECTION_HEADER_RULE: - return kDefaultColorNTPSectionHeaderRule; - case COLOR_NTP_SECTION_HEADER_RULE_LIGHT: - return kDefaultColorNTPSectionHeaderRuleLight; case COLOR_CONTROL_BACKGROUND: return kDefaultColorControlBackground; case COLOR_BUTTON_BACKGROUND: diff --git a/chrome/browser/themes/browser_theme_provider.h b/chrome/browser/themes/browser_theme_provider.h index dddffa7..d2b75bf 100644 --- a/chrome/browser/themes/browser_theme_provider.h +++ b/chrome/browser/themes/browser_theme_provider.h @@ -72,15 +72,19 @@ class BrowserThemeProvider : public NonThreadSafe, COLOR_NTP_LINK_UNDERLINE, COLOR_NTP_HEADER, COLOR_NTP_SECTION, - COLOR_NTP_SECTION_HEADER_TEXT, - COLOR_NTP_SECTION_HEADER_TEXT_HOVER, - COLOR_NTP_SECTION_HEADER_RULE, - COLOR_NTP_SECTION_HEADER_RULE_LIGHT, COLOR_NTP_SECTION_TEXT, COLOR_NTP_SECTION_LINK, COLOR_NTP_SECTION_LINK_UNDERLINE, COLOR_CONTROL_BACKGROUND, COLOR_BUTTON_BACKGROUND, + + // These colors don't have constant default values. They are derived from + // the runtime value of other colors. + COLOR_NTP_SECTION_HEADER_TEXT, + COLOR_NTP_SECTION_HEADER_TEXT_HOVER, + COLOR_NTP_SECTION_HEADER_RULE, + COLOR_NTP_SECTION_HEADER_RULE_LIGHT, + TINT_BUTTONS, TINT_FRAME, TINT_FRAME_INACTIVE, |