summaryrefslogtreecommitdiff
path: root/sent.c
diff options
context:
space:
mode:
authorMarkus Teich <markus.teich@stusta.mhn.de>2015-04-22 11:56:41 +0200
committerMarkus Teich <markus.teich@stusta.mhn.de>2015-04-22 11:56:41 +0200
commit5394f7f539ecff863f58458cea5faaa867680ce6 (patch)
tree34c99d8ad80fdd68636221f4b8e89c7cae30b68b /sent.c
parent4993b300f38e6f29a8b0478bd01fb362aacf809d (diff)
fix calculation of correct font size to use
Diffstat (limited to 'sent.c')
-rw-r--r--sent.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sent.c b/sent.c
index 60863f3..4988650 100644
--- a/sent.c
+++ b/sent.c
@@ -384,14 +384,19 @@ XFontStruct *xloadqueryscalablefont(char *name, int size)
void getfontsize(char *str, int *width, int *height)
{
size_t i;
+ size_t len = strlen(str);
for (i = 0; i < NUMFONTSCALES; i++) {
drw_setfontset(d, fonts[i]);
- if ((*width = drw_fontset_getwidth(d, str)) > xw.uw || (*height = d->fonts->h) > xw.uh)
+ drw_font_getexts(fonts[i], str, len, width, height);
+ if (*width > xw.uw || *height > xw.uh)
break;
}
- if (i > 0)
+ if (i > 0) {
drw_setfontset(d, fonts[i-1]);
+ drw_font_getexts(fonts[i-1], str, len, width, height);
+ }
+ *width += d->fonts->h;
}
void cleanup(struct DC *cur)