summaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
Diffstat (limited to 'render')
-rw-r--r--render/render.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/render/render.c b/render/render.c
index 7c00c146..20002e32 100644
--- a/render/render.c
+++ b/render/render.c
@@ -135,12 +135,14 @@ Pixmap RrPaintPixmap(RrAppearance *a, gint w, gint h)
{
RrRect narea = tarea;
RrTextureImage *img = &a->texture[i].data.image;
- if (img->twidth)
- narea.width = MIN(tarea.width, img->twidth);
- if (img->theight)
- narea.height = MIN(tarea.height, img->theight);
narea.x += img->tx;
+ narea.width -= img->tx;
narea.y += img->ty;
+ narea.height -= img->ty;
+ if (img->twidth)
+ narea.width = MIN(narea.width, img->twidth);
+ if (img->theight)
+ narea.height = MIN(narea.height, img->theight);
RrImageDrawImage(a->surface.pixel_data,
&a->texture[i].data.image,
a->w, a->h,
@@ -153,12 +155,14 @@ Pixmap RrPaintPixmap(RrAppearance *a, gint w, gint h)
{
RrRect narea = tarea;
RrTextureRGBA *rgb = &a->texture[i].data.rgba;
- if (rgb->twidth)
- narea.width = MIN(tarea.width, rgb->twidth);
- if (rgb->theight)
- narea.height = MIN(tarea.height, rgb->theight);
narea.x += rgb->tx;
+ narea.width -= rgb->tx;
narea.y += rgb->ty;
+ narea.height -= rgb->ty;
+ if (rgb->twidth)
+ narea.width = MIN(narea.width, rgb->twidth);
+ if (rgb->theight)
+ narea.height = MIN(narea.height, rgb->theight);
RrImageDrawRGBA(a->surface.pixel_data,
&a->texture[i].data.rgba,
a->w, a->h,