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

Unified Diff: chrome/browser/gtk/gtk_theme_provider.cc

Issue 258020: GTK: Refactor some things so GTK doesn't touch the on disk image cache. (Closed)
Patch Set: Created 11 years, 3 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
« no previous file with comments | « chrome/browser/browser_theme_provider.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/gtk/gtk_theme_provider.cc
diff --git a/chrome/browser/gtk/gtk_theme_provider.cc b/chrome/browser/gtk/gtk_theme_provider.cc
index bc47e8fa7f6d54db8855963c575acaf056809629..296b72c988204dd3bfd5c4d86d83e294635093d3 100644
--- a/chrome/browser/gtk/gtk_theme_provider.cc
+++ b/chrome/browser/gtk/gtk_theme_provider.cc
@@ -258,18 +258,23 @@ void GtkThemeProvider::NotifyThemeChanged() {
}
SkBitmap* GtkThemeProvider::LoadThemeBitmap(int id) {
- if (id == IDR_THEME_TOOLBAR && use_gtk_) {
- GtkStyle* style = gtk_rc_get_style(fake_window_);
- GdkColor* color = &style->bg[GTK_STATE_NORMAL];
- SkBitmap* bitmap = new SkBitmap;
- bitmap->setConfig(SkBitmap::kARGB_8888_Config,
- kToolbarImageWidth, kToolbarImageHeight);
- bitmap->allocPixels();
- bitmap->eraseRGB(color->red >> 8, color->green >> 8, color->blue >> 8);
- return bitmap;
- } else {
- return BrowserThemeProvider::LoadThemeBitmap(id);
+ if (use_gtk_) {
+ if (id == IDR_THEME_TOOLBAR) {
+ GtkStyle* style = gtk_rc_get_style(fake_window_);
+ GdkColor* color = &style->bg[GTK_STATE_NORMAL];
+ SkBitmap* bitmap = new SkBitmap;
+ bitmap->setConfig(SkBitmap::kARGB_8888_Config,
+ kToolbarImageWidth, kToolbarImageHeight);
+ bitmap->allocPixels();
+ bitmap->eraseRGB(color->red >> 8, color->green >> 8, color->blue >> 8);
+ return bitmap;
+ } else if ((id == IDR_THEME_TAB_BACKGROUND ||
+ id == IDR_THEME_TAB_BACKGROUND_INCOGNITO)) {
+ return GenerateTabBackgroundBitmapImpl(id);
+ }
}
+
+ return BrowserThemeProvider::LoadThemeBitmap(id);
}
void GtkThemeProvider::SaveThemeBitmap(const std::string resource_name,
@@ -434,6 +439,7 @@ void GtkThemeProvider::LoadGtkValues() {
force_process_images();
GenerateFrameColors();
+ AutoLock lock(themed_image_cache_lock_);
GenerateFrameImages();
}
« no previous file with comments | « chrome/browser/browser_theme_provider.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698