From: Carl Worth Date: Thu, 16 Jun 2005 19:04:59 +0000 (+0000) Subject: * src/grr_icon.c (grr_icon_predraw): Fix scaling of all icons by X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=8adeced1c66b83bc2c46124523f2d3e07dae68ac;p=grrobot * src/grr_icon.c (grr_icon_predraw): Fix scaling of all icons by copying the matrix from the main cairo_t to the temporary cairo_t. --- diff --git a/ChangeLog b/ChangeLog index 8cbccfd..eab42dd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-06-16 Carl Worth + + * src/grr_icon.c (grr_icon_predraw): Fix scaling of all icons by + copying the matrix from the main cairo_t to the temporary cairo_t. + 2005-06-16 Carl Worth * src/grr_icon.c (grr_icon_draw_predrawn): Fix inactive targets to diff --git a/src/grr_icon.c b/src/grr_icon.c index d4a2bb5..fa76331 100644 --- a/src/grr_icon.c +++ b/src/grr_icon.c @@ -238,6 +238,7 @@ void grr_icon_predraw (grr_icon_t *icon, cairo_t *xrs, int width, int height) { cairo_t *xrs2; + cairo_matrix_t ctm; if (icon->surface_width != width || icon->surface_height != height) { if (icon->surface) @@ -249,7 +250,10 @@ grr_icon_predraw (grr_icon_t *icon, cairo_t *xrs, int width, int height) width, height); } + /* Need to copy the CTM from the original cairo_t to the new one */ xrs2 = cairo_create (icon->surface); + cairo_get_matrix (xrs, &ctm); + cairo_set_matrix (xrs2, &ctm); grr_icon_draw (icon, xrs2); cairo_destroy (xrs2); }