diff options
author | Markus Teich <markus.teich@stusta.mhn.de> | 2015-04-22 11:56:41 +0200 |
---|---|---|
committer | Markus Teich <markus.teich@stusta.mhn.de> | 2015-04-22 11:56:41 +0200 |
commit | 5394f7f539ecff863f58458cea5faaa867680ce6 (patch) | |
tree | 34c99d8ad80fdd68636221f4b8e89c7cae30b68b | |
parent | 4993b300f38e6f29a8b0478bd01fb362aacf809d (diff) |
fix calculation of correct font size to use
-rw-r--r-- | sent.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -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) |