summaryrefslogtreecommitdiff
path: root/pango/fonts.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2019-12-08 03:33:02 +0100
committerBenjamin Otte <otte@redhat.com>2019-12-08 03:33:02 +0100
commit5e07328675aa49d9b84b3ab4405ff94b92835e9c (patch)
tree42f19c9d575ec1ddb7976079561780ae2aa93714 /pango/fonts.c
parent5ab34cc4103de109ef4e4e54c435c5e4e41cfe96 (diff)
downloadpango-5e07328675aa49d9b84b3ab4405ff94b92835e9c.tar.gz
family: Clarify and improve pango_font_family_get_face()
- Clarify that the function can return NULL - Fix annotations - Allow passing NULL as name to get a guaranteed default face. - Map the default name to "Regular" in the FC backend
Diffstat (limited to 'pango/fonts.c')
-rw-r--r--pango/fonts.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/pango/fonts.c b/pango/fonts.c
index 736c9c20..f4244911 100644
--- a/pango/fonts.c
+++ b/pango/fonts.c
@@ -2295,12 +2295,19 @@ pango_font_family_real_get_face (PangoFontFamily *family,
pango_font_family_list_faces (family, &faces, &n_faces);
face = NULL;
- for (i = 0; i < n_faces; i++)
+ if (name == NULL)
{
- if (strcmp (name, pango_font_face_get_face_name (faces[i])) == 0)
+ face = faces[0];
+ }
+ else
+ {
+ for (i = 0; i < n_faces; i++)
{
- face = faces[i];
- break;
+ if (strcmp (name, pango_font_face_get_face_name (faces[i])) == 0)
+ {
+ face = faces[i];
+ break;
+ }
}
}
@@ -2312,11 +2319,14 @@ pango_font_family_real_get_face (PangoFontFamily *family,
/**
* pango_font_family_get_face:
* @family: a #PangoFontFamily
- * @name: the name of a face
+ * @name: (optional): the name of a face. If the name is %NULL,
+ * the family's default face (fontconfig calls it "Regular")
+ * will be returned.
*
* Gets the #PangoFontFace of @family with the given name.
*
- * Returns: (transfer none): the #PangoFontFace
+ * Returns: (transfer none) (nullable): the #PangoFontFace,
+ * or %NULL if no face with the given name exists.
*
* Since: 1.46
*/