From 43788ba936f0f1af4c169bc2c4817e7895efa753 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Wed, 2 Jul 2014 19:47:48 +0200 Subject: [PATCH] cssimageicontheme: Handle scale factors correctly Code didn't account for the pixbuf returned being scaled. --- gtk/gtkcssimageicontheme.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gtk/gtkcssimageicontheme.c b/gtk/gtkcssimageicontheme.c index dfc73cdbd2..bfbcb70f57 100644 --- a/gtk/gtkcssimageicontheme.c +++ b/gtk/gtkcssimageicontheme.c @@ -75,10 +75,12 @@ gtk_css_image_icon_theme_draw (GtkCssImage *image, return; } + cairo_translate (cr, width / 2.0, height / 2.0); + cairo_scale (cr, 1.0 / icon_theme->scale, 1.0 / icon_theme->scale); gdk_cairo_set_source_pixbuf (cr, pixbuf, - (width - gdk_pixbuf_get_width (pixbuf)) / 2.0, - (height - gdk_pixbuf_get_height (pixbuf)) / 2.0); + - gdk_pixbuf_get_width (pixbuf) / 2.0, + - gdk_pixbuf_get_height (pixbuf) / 2.0); cairo_paint (cr); g_object_unref (pixbuf);