fix min-size calculations for lineart textures
Dana Jansens danakj@orodu.net
1 files changed,
8 insertions(+),
8 deletions(-)
jump to
M
render/render.c
→
render/render.c
@@ -394,6 +394,8 @@ RrSize *m;
gint l, t, r, b; gint w = 0; + RrMargins(a, &l, &t, &r, &b); + for (i = 0; i < a->textures; ++i) { switch (a->texture[i].type) { case RR_TEXTURE_NONE:@@ -418,13 +420,11 @@ case RR_TEXTURE_IMAGE:
/* images resize so they don't contribute anything to the min */ break; case RR_TEXTURE_LINE_ART: - w += MAX(w, MAX(a->texture[i].data.lineart.x1, - a->texture[i].data.lineart.x2)); + w = MAX(w, MAX(a->texture[i].data.lineart.x1 - l - r, + a->texture[i].data.lineart.x2 - l - r)); break; } } - - RrMargins(a, &l, &t, &r, &b); w += l + r;@@ -439,6 +439,8 @@ gint l, t, r, b;
RrSize *m; gint h = 0; + RrMargins(a, &l, &t, &r, &b); + for (i = 0; i < a->textures; ++i) { switch (a->texture[i].type) { case RR_TEXTURE_NONE:@@ -473,13 +475,11 @@ case RR_TEXTURE_IMAGE:
/* images resize so they don't contribute anything to the min */ break; case RR_TEXTURE_LINE_ART: - h += MAX(h, MAX(a->texture[i].data.lineart.y1, - a->texture[i].data.lineart.y2)); + h = MAX(h, MAX(a->texture[i].data.lineart.y1 - t - b, + a->texture[i].data.lineart.y2 - t - b)); break; } } - - RrMargins(a, &l, &t, &r, &b); h += t + b;