emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 1b2511f: Fix selection of fonts that don't have regular weight


From: Eli Zaretskii
Subject: master 1b2511f: Fix selection of fonts that don't have regular weight
Date: Fri, 17 Dec 2021 03:36:45 -0500 (EST)

branch: master
commit 1b2511fa2aed460120a36765ba16c14e355eef1d
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    Fix selection of fonts that don't have regular weight
    
    * src/font.c (font_delete_unmatched): The kludge of allowing
    inexact matches of the font weight is now used for non-NTGUI
    platforms as well.  (Bug#52493)
---
 src/font.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/font.c b/src/font.c
index d780d78..f934a8c 100644
--- a/src/font.c
+++ b/src/font.c
@@ -2768,7 +2768,6 @@ font_delete_unmatched (Lisp_Object vec, Lisp_Object spec, 
int size)
              int candidate = XFIXNUM (AREF (entity, prop)) >> 8;
 
              if (candidate != required
-#ifdef HAVE_NTGUI
                  /* A kludge for w32 font search, where listing a
                     family returns only 4 standard weights: regular,
                     italic, bold, bold-italic.  For other values one
@@ -2778,10 +2777,14 @@ font_delete_unmatched (Lisp_Object vec, Lisp_Object 
spec, int size)
                     weight, so if we require exact match, the
                     non-regular font will be rejected.  So we relax
                     the accuracy of the match here, and let
-                    font_sort_entities find the best match.  */
+                    font_sort_entities find the best match.
+
+                    Similar things happen on Posix platforms, when
+                    people use font families that don't have the
+                    regular weight, only the medium weight: these
+                    families get rejected if we require an exact match.  */
                  && (prop != FONT_WEIGHT_INDEX
                      || eabs (candidate - required) > 100)
-#endif
                  )
                prop = FONT_SPEC_MAX;
            }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]