; Minor cleanup of last change in xfaces.c.
This commit is contained in:
parent
2024ade271
commit
78ad33bb05
1 changed files with 24 additions and 24 deletions
48
src/xfaces.c
48
src/xfaces.c
|
@ -6018,8 +6018,8 @@ realize_non_ascii_face (struct frame *f, Lisp_Object font_object,
|
||||||
appears in `font-fallback-ignored-attributes'. */
|
appears in `font-fallback-ignored-attributes'. */
|
||||||
|
|
||||||
static void
|
static void
|
||||||
font_unset_attribute (Lisp_Object font_object, enum font_property_index index,
|
font_maybe_unset_attribute (Lisp_Object font_object,
|
||||||
Lisp_Object symbol)
|
enum font_property_index index, Lisp_Object symbol)
|
||||||
{
|
{
|
||||||
Lisp_Object tail = Vface_font_lax_matched_attributes;
|
Lisp_Object tail = Vface_font_lax_matched_attributes;
|
||||||
|
|
||||||
|
@ -6089,31 +6089,31 @@ realize_gui_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]
|
||||||
{
|
{
|
||||||
Lisp_Object spec = copy_font_spec (attrs[LFACE_FONT_INDEX]);
|
Lisp_Object spec = copy_font_spec (attrs[LFACE_FONT_INDEX]);
|
||||||
|
|
||||||
/* Unset several values in SPEC, usually the width, slant,
|
/* Maybe unset several values in SPEC, usually the width,
|
||||||
and weight. The best possible values for these
|
slant, and weight. The best possible values for these
|
||||||
attributes is determined in font_find_for_lface, called
|
attributes are determined in font_find_for_lface, called
|
||||||
by font_load_for_lface, when the candidate list returned
|
by font_load_for_lface, when the list of candidate fonts
|
||||||
by font_list_entities is sorted by font_select_entity
|
returned by font_list_entities is sorted by font_select_entity
|
||||||
(which calls font_sort_entities, which calls font_score).
|
(which calls font_sort_entities, which calls font_score).
|
||||||
If these attributes are not unset here, the candidate
|
If these attributes are not unset here, the candidate
|
||||||
font list returned by font_list_entities only contains
|
font list returned by font_list_entities only contains
|
||||||
fonts that are exact matches for these weight, slant and
|
fonts that are exact matches for these weight, slant, and
|
||||||
width attributes, which leads to suboptimal or wrong font
|
width attributes, which could lead to suboptimal or wrong
|
||||||
choices. (bug#5934) */
|
font selection. (bug#5934) */
|
||||||
font_unset_attribute (spec, FONT_WEIGHT_INDEX, QCweight);
|
font_maybe_unset_attribute (spec, FONT_WEIGHT_INDEX, QCweight);
|
||||||
font_unset_attribute (spec, FONT_SLANT_INDEX, QCslant);
|
font_maybe_unset_attribute (spec, FONT_SLANT_INDEX, QCslant);
|
||||||
font_unset_attribute (spec, FONT_WIDTH_INDEX, QCwidth);
|
font_maybe_unset_attribute (spec, FONT_WIDTH_INDEX, QCwidth);
|
||||||
/* Also allow unsetting other attributes for debugging
|
/* Also allow unsetting other attributes for debugging
|
||||||
purposes. But not FONT_EXTRA_INDEX; that is not safe to
|
purposes. But not FONT_EXTRA_INDEX; that is not safe to
|
||||||
touch in the Haiku font backend. */
|
touch, at least in the Haiku font backend. */
|
||||||
font_unset_attribute (spec, FONT_FAMILY_INDEX, QCfamily);
|
font_maybe_unset_attribute (spec, FONT_FAMILY_INDEX, QCfamily);
|
||||||
font_unset_attribute (spec, FONT_FOUNDRY_INDEX, QCfoundry);
|
font_maybe_unset_attribute (spec, FONT_FOUNDRY_INDEX, QCfoundry);
|
||||||
font_unset_attribute (spec, FONT_REGISTRY_INDEX, QCregistry);
|
font_maybe_unset_attribute (spec, FONT_REGISTRY_INDEX, QCregistry);
|
||||||
font_unset_attribute (spec, FONT_ADSTYLE_INDEX, QCadstyle);
|
font_maybe_unset_attribute (spec, FONT_ADSTYLE_INDEX, QCadstyle);
|
||||||
font_unset_attribute (spec, FONT_SIZE_INDEX, QCsize);
|
font_maybe_unset_attribute (spec, FONT_SIZE_INDEX, QCsize);
|
||||||
font_unset_attribute (spec, FONT_DPI_INDEX, QCdpi);
|
font_maybe_unset_attribute (spec, FONT_DPI_INDEX, QCdpi);
|
||||||
font_unset_attribute (spec, FONT_SPACING_INDEX, QCspacing);
|
font_maybe_unset_attribute (spec, FONT_SPACING_INDEX, QCspacing);
|
||||||
font_unset_attribute (spec, FONT_AVGWIDTH_INDEX, QCavgwidth);
|
font_maybe_unset_attribute (spec, FONT_AVGWIDTH_INDEX, QCavgwidth);
|
||||||
|
|
||||||
attrs[LFACE_FONT_INDEX] = font_load_for_lface (f, attrs, spec);
|
attrs[LFACE_FONT_INDEX] = font_load_for_lface (f, attrs, spec);
|
||||||
}
|
}
|
||||||
|
@ -7408,8 +7408,8 @@ clear the face cache, see `clear-face-cache'. */);
|
||||||
Vface_font_lax_matched_attributes,
|
Vface_font_lax_matched_attributes,
|
||||||
doc: /* Font-related face attributes to match in lax manner when realizing faces.
|
doc: /* Font-related face attributes to match in lax manner when realizing faces.
|
||||||
|
|
||||||
The value should be a list of face attribute symbols; see
|
The value should be a list of font-related face attribute symbols;
|
||||||
`set-face-attribute' for the full list of attributes. The
|
see `set-face-attribute' for the full list of attributes. The
|
||||||
corresponding face attributes will be treated as "soft" constraints
|
corresponding face attributes will be treated as "soft" constraints
|
||||||
when looking for suitable fonts: if an exact match is not possible,
|
when looking for suitable fonts: if an exact match is not possible,
|
||||||
a font can be selected that is a close, but not an exact, match. For
|
a font can be selected that is a close, but not an exact, match. For
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue