Index: chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc |
diff --git a/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc b/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc |
index cbd8618590f24a9e8990d71a7c019ea2cc8a142a..340205da0e49a6b319bb9baac9bbed3ca904c3a7 100644 |
--- a/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc |
+++ b/chrome/browser/ui/gtk/tabs/tab_strip_gtk.cc |
@@ -1279,7 +1279,7 @@ bool TabStripGtk::HasAvailableDragActions() const { |
return model_->delegate()->GetDragActions() != 0; |
} |
-ThemeService* TabStripGtk::GetThemeProvider() { |
+GtkThemeService* TabStripGtk::GetThemeProvider() { |
return theme_service_; |
} |
@@ -2177,8 +2177,14 @@ bool TabStripGtk::CanPaintOnlyFavicons(const GdkRectangle* rects, |
void TabStripGtk::PaintOnlyFavicons(GdkEventExpose* event, |
const std::vector<int>& tabs_to_paint) { |
- for (size_t i = 0; i < tabs_to_paint.size(); ++i) |
- GetTabAt(tabs_to_paint[i])->PaintFaviconArea(event); |
+ cairo_t* cr = gdk_cairo_create(GDK_DRAWABLE(event->window)); |
+ for (size_t i = 0; i < tabs_to_paint.size(); ++i) { |
+ cairo_save(cr); |
+ GetTabAt(tabs_to_paint[i])->PaintFaviconArea(tabstrip_.get(), cr); |
+ cairo_restore(cr); |
+ } |
+ |
+ cairo_destroy(cr); |
} |
CustomDrawButton* TabStripGtk::MakeNewTabButton() { |