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

Unified Diff: chrome/browser/browser_theme_provider.cc

Issue 162010: Allow theming of colors for the Mac. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 11 years, 4 months 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/browser_theme_provider.cc
===================================================================
--- chrome/browser/browser_theme_provider.cc (revision 22474)
+++ chrome/browser/browser_theme_provider.cc (working copy)
@@ -256,54 +256,97 @@
}
}
-SkColor BrowserThemeProvider::GetColor(int id) {
- DCHECK(CalledOnValidThread());
-
- // TODO(glen): Figure out if we need to tint these. http://crbug.com/11578
+const std::string BrowserThemeProvider::GetColorKey(int id) {
switch (id) {
case COLOR_FRAME:
- return FindColor(kColorFrame, kDefaultColorFrame);
+ return kColorFrame;
case COLOR_FRAME_INACTIVE:
- return FindColor(kColorFrameInactive, kDefaultColorFrameInactive);
+ return kColorFrameInactive;
case COLOR_FRAME_INCOGNITO:
- return FindColor(kColorFrameIncognito, kDefaultColorFrameIncognito);
+ return kColorFrameIncognito;
case COLOR_FRAME_INCOGNITO_INACTIVE:
- return FindColor(kColorFrameIncognitoInactive,
- kDefaultColorFrameIncognitoInactive);
+ return kColorFrameIncognitoInactive;
case COLOR_TOOLBAR:
- return FindColor(kColorToolbar, kDefaultColorToolbar);
+ return kColorToolbar;
case COLOR_TAB_TEXT:
- return FindColor(kColorTabText, kDefaultColorTabText);
+ return kColorTabText;
case COLOR_BACKGROUND_TAB_TEXT:
- return FindColor(kColorBackgroundTabText, kDefaultColorBackgroundTabText);
+ return kColorBackgroundTabText;
case COLOR_BOOKMARK_TEXT:
- return FindColor(kColorBookmarkText, kDefaultColorBookmarkText);
+ return kColorBookmarkText;
case COLOR_NTP_BACKGROUND:
- return (colors_.find(kColorNTPBackground) != colors_.end()) ?
- colors_[kColorNTPBackground] :
- kDefaultColorNTPBackground;
+ return kColorNTPBackground;
case COLOR_NTP_TEXT:
- return FindColor(kColorNTPText, kDefaultColorNTPText);
+ return kColorNTPText;
case COLOR_NTP_LINK:
- return FindColor(kColorNTPLink, kDefaultColorNTPLink);
+ return kColorNTPLink;
case COLOR_NTP_SECTION:
- return FindColor(kColorNTPSection, kDefaultColorNTPSection);
+ return kColorNTPSection;
case COLOR_NTP_SECTION_TEXT:
- return FindColor(kColorNTPSectionText, kDefaultColorNTPSectionText);
+ return kColorNTPSectionText;
case COLOR_NTP_SECTION_LINK:
- return FindColor(kColorNTPSectionLink, kDefaultColorNTPSectionLink);
+ return kColorNTPSectionLink;
case COLOR_CONTROL_BACKGROUND:
- return FindColor(kColorControlBackground, kDefaultColorControlBackground);
+ return kColorControlBackground;
case COLOR_BUTTON_BACKGROUND:
- return FindColor(kColorButtonBackground, kDefaultColorButtonBackground);
+ return kColorButtonBackground;
default:
NOTREACHED() << "Unknown color requested";
+ return "";
}
+}
- // Return a debugging red color.
- return 0xffff0000;
+SkColor BrowserThemeProvider::GetDefaultColor(int id) {
+ switch (id) {
+ case COLOR_FRAME:
+ return kDefaultColorFrame;
+ case COLOR_FRAME_INACTIVE:
+ return kDefaultColorFrameInactive;
+ case COLOR_FRAME_INCOGNITO:
+ return kDefaultColorFrameIncognito;
+ case COLOR_FRAME_INCOGNITO_INACTIVE:
+ return kDefaultColorFrameIncognitoInactive;
+ case COLOR_TOOLBAR:
+ return kDefaultColorToolbar;
+ case COLOR_TAB_TEXT:
+ return kDefaultColorTabText;
+ case COLOR_BACKGROUND_TAB_TEXT:
+ return kDefaultColorBackgroundTabText;
+ case COLOR_BOOKMARK_TEXT:
+ return kDefaultColorBookmarkText;
+ case COLOR_NTP_BACKGROUND:
+ return kDefaultColorNTPBackground;
+ case COLOR_NTP_TEXT:
+ return kDefaultColorNTPText;
+ case COLOR_NTP_LINK:
+ return kDefaultColorNTPLink;
+ case COLOR_NTP_SECTION:
+ return kDefaultColorNTPSection;
+ case COLOR_NTP_SECTION_TEXT:
+ return kDefaultColorNTPSectionText;
+ case COLOR_NTP_SECTION_LINK:
+ return kDefaultColorNTPSectionLink;
+ case COLOR_CONTROL_BACKGROUND:
+ return kDefaultColorControlBackground;
+ case COLOR_BUTTON_BACKGROUND:
+ return kDefaultColorButtonBackground;
+ default:
+ // Return a debugging red color.
+ return 0xffff0000;
+ }
}
+SkColor BrowserThemeProvider::GetColor(int id) {
+ DCHECK(CalledOnValidThread());
+
+ // TODO(glen): Figure out if we need to tint these. http://crbug.com/11578
+ ColorMap::iterator color_iter = colors_.find(GetColorKey(id));
+ if (color_iter != colors_.end())
+ return color_iter->second;
+ else
+ return GetDefaultColor(id);
+}
+
bool BrowserThemeProvider::GetDisplayProperty(int id, int* result) {
switch (id) {
case NTP_BACKGROUND_ALIGNMENT:
@@ -968,11 +1011,6 @@
}
}
-SkColor BrowserThemeProvider::FindColor(const char* id,
- SkColor default_color) {
- return (colors_.find(id) != colors_.end()) ? colors_[id] : default_color;
-}
-
void BrowserThemeProvider::ClearCaches() {
FreePlatformCaches();
for (ImageCache::iterator i = image_cache_.begin();

Powered by Google App Engine
This is Rietveld 408576698