diff options
author | Richard M. Stallman <[email protected]> | 1993-07-24 07:23:16 +0000 |
---|---|---|
committer | Richard M. Stallman <[email protected]> | 1993-07-24 07:23:16 +0000 |
commit | e5e548e338cae173b7a994390a5af5822ee23e6b (patch) | |
tree | bba639f8fa661af3c206d4e6ef6f9fb969906c10 /src/xfns.c | |
parent | 82411f65a3b71b89f9357eadf882b86f4687b843 (diff) |
(Fx_create_frame): Don't look for default font
if the caller has specified a valid font. Try several
alternative font patterns.
Diffstat (limited to 'src/xfns.c')
-rw-r--r-- | src/xfns.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/xfns.c b/src/xfns.c index 43dbabbc80..ade94e129b 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -1753,13 +1753,27 @@ be shared by the new frame.") { Lisp_Object font; - /* Try out a font which we know has bold and italic variations. */ + font = x_get_arg (parms, Qfont, "font", "Font", string); BLOCK_INPUT; - font = x_new_font (f, "-*-*-medium-r-*-*-*-*-*-*-c-*-iso8859-1"); + /* First, try whatever font the caller has specified. */ + if (STRINGP (font)) + font = x_new_font (f, XSTRING (tem)->data); + /* Try out a font which we hope has bold and italic variations. */ + if (!STRINGP (font)) + font = x_new_font (f, "-misc-fixed-medium-r-normal-*-*-120-*-*-c-*-iso8859-1"); + if (! STRINGP (font)) + font = x_new_font (f, "-*-*-medium-r-normal-*-*-120-*-*-c-*-iso8859-1"); + if (! STRINGP (font)) + /* This was formerly the first thing tried, but it finds too many fonts + and takes too long. */ + font = x_new_font (f, "-*-*-medium-r-*-*-*-*-*-*-c-*-iso8859-1"); + /* If those didn't work, look for something which will at least work. */ + if (! STRINGP (font)) + font = x_new_font (f, "-*-fixed-*-*-*-*-*-120-*-*-c-*-iso8859-1"); UNBLOCK_INPUT; if (! STRINGP (font)) - font = build_string ("-*-fixed-*-*-*-*-*-120-*-*-c-*-iso8859-1"); - + font = build_string ("fixed"); + x_default_parameter (f, parms, Qfont, font, "font", "Font", string); } |