From ac1b3ca803ed066cd5f138a102f23a9c4b8c71dc Mon Sep 17 00:00:00 2001 From: pcg Date: Wed, 17 Dec 2003 22:29:03 +0000 Subject: [PATCH] *** empty log message *** --- src/defaultfont.C | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/defaultfont.C b/src/defaultfont.C index 91a750b6..fd20e9a1 100644 --- a/src/defaultfont.C +++ b/src/defaultfont.C @@ -355,6 +355,28 @@ rxvt_font_x11::load (int maxheight) { clear (); + char **list; + int count; + XFontStruct *info; + list = XListFontsWithInfo (DISPLAY, name, 128, &count, &info); + + if (!list) + return false; + + XFontStruct *best = 0; + for (int i = 0; i < count; i++) + { + XFontStruct *f = info + i; + if (f->ascent + f->descent <= maxheight) // weed out too large fonts + if (!best // compare against best found so far + || best->ascent + best->descent < f->ascent + f->descent) + best = f; + } + + set_name (strdup (list[best - info])); + + XFreeFontInfo (list, info, count); + f = XLoadQueryFont (DISPLAY, name); if (!f) -- 2.34.1