--- rxvt-unicode/src/rxvtimg.C 2012/06/17 21:58:18 1.98 +++ rxvt-unicode/src/rxvtimg.C 2012/07/02 02:01:41 1.100 @@ -478,17 +478,23 @@ } void -rxvt_img::fill (const rgba &c) +rxvt_img::fill (const rgba &c, int x, int y, int w, int h) { XRenderColor rc = { c.r, c.g, c.b, c.a }; Display *dpy = s->dpy; Picture src = picture (); - XRenderFillRectangle (dpy, PictOpSrc, src, &rc, 0, 0, w, h); + XRenderFillRectangle (dpy, PictOpSrc, src, &rc, x, y, w, h); XRenderFreePicture (dpy, src); } void +rxvt_img::fill (const rgba &c) +{ + fill (c, 0, 0, w, h); +} + +void rxvt_img::add_alpha () { if (format->direct.alphaMask) @@ -817,12 +823,6 @@ rxvt_img * rxvt_img::rotate (int cx, int cy, nv phi) { -#if 0 - { c, -s, cx - c * cx + s * cy }, - { s, c, cy - s * cx - c * cy }, - { 0, 0, 1 } -#endif - move (-cx, -cy); rxvt_img *img = transform (mat3x3::rotate (phi)); move ( cx, cy); @@ -870,9 +870,7 @@ rxvt_img * rxvt_img::filter (const char *name, int nparams, nv *params) { - rxvt_img *img = new_empty (); - - composer cc (img); + composer cc (this); XFixed *xparams = rxvt_temp_buf (nparams);