summaryrefslogtreecommitdiff
path: root/src/xftrender.c
diff options
context:
space:
mode:
authorThomas E. Dickey <dickey@invisible-island.net>2022-07-09 09:04:18 -0400
committerThomas E. Dickey <dickey@invisible-island.net>2022-07-09 10:13:56 -0400
commit3ca7a7c375a8c022c068e2534c5a6861e547eaef (patch)
treeb2f6fde63222a2e084f83884375975f565b3bb6e /src/xftrender.c
parentc53a1bc27c11e0c3cdf54e2beffd6cc220703a0b (diff)
downloadxorg-lib-libXft-3ca7a7c375a8c022c068e2534c5a6861e547eaef.tar.gz
merge changes by Christian Werner
see note in libXft merge-request #1 at #note_1222314 Signed-off-by: Thomas E. Dickey <dickey@invisible-island.net>
Diffstat (limited to 'src/xftrender.c')
-rw-r--r--src/xftrender.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/src/xftrender.c b/src/xftrender.c
index 721cae0..98c86cd 100644
--- a/src/xftrender.c
+++ b/src/xftrender.c
@@ -156,15 +156,10 @@ XftGlyphRender (Display *dpy,
glyph = font->glyphs[wire];
if (glyph->picture)
{
- _XftCompositeString(dpy, op, src, dst, font->format, font->glyphset,
- srcx, srcy, x, y, width, chars, j);
- XRenderComposite(dpy, PictOpOver, glyph->picture, None,
- dst, 0, 0, 0, 0, dstx, dsty - glyph->metrics.y,
- glyph->metrics.width, glyph->metrics.height);
-
+ _XftCompositeString(dpy, op, src, dst, font->format, font->glyphset, srcx, srcy, x, y, width, chars, j);
+ XRenderComposite(dpy, PictOpOver, glyph->picture, None, dst, 0, 0, 0, 0, dstx - glyph->metrics.x, dsty - glyph->metrics.y, glyph->metrics.width, glyph->metrics.height);
dstx += glyph->metrics.xOff;
dsty += glyph->metrics.yOff;
-
x = dstx;
y = dsty;
j = 0;
@@ -388,8 +383,10 @@ XftGlyphSpecRender (Display *dpy,
{
XRenderComposite(dpy, PictOpOver, glyph->picture, None,
dst, 0, 0, 0, 0,
- glyphs[i].x, glyphs[i].y - glyph->metrics.y,
- glyph->metrics.width, glyph->metrics.height);
+ glyphs[i].x - glyph->metrics.x,
+ glyphs[i].y - glyph->metrics.y,
+ glyph->metrics.width,
+ glyph->metrics.height);
continue;
}
if (!i || x != glyphs[i].x || y != glyphs[i].y)
@@ -674,8 +671,10 @@ XftGlyphFontSpecRender (Display *dpy,
{
XRenderComposite(dpy, PictOpOver, glyph->picture, None,
dst, 0, 0, 0, 0,
- glyphs[i].x, glyphs[i].y - glyph->metrics.y,
- glyph->metrics.width, glyph->metrics.height);
+ glyphs[i].x - glyph->metrics.x,
+ glyphs[i].y - glyph->metrics.y,
+ glyph->metrics.width,
+ glyph->metrics.height);
continue;
}
if (!i || pub != prevPublic || x != glyphs[i].x || y != glyphs[i].y)