[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master f70dfb74cc: Fix handling of some weights in the Haiku font driver
From: |
Po Lu |
Subject: |
master f70dfb74cc: Fix handling of some weights in the Haiku font driver |
Date: |
Mon, 2 May 2022 04:46:46 -0400 (EDT) |
branch: master
commit f70dfb74ccab4adaf98f6436444b94162104076f
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>
Fix handling of some weights in the Haiku font driver
* src/haiku_font_support.cc (font_style_to_flags):
* src/haiku_support.h (enum haiku_font_weight):
* src/haikufont.c (haikufont_weight_to_lisp)
(haikufont_lisp_to_weight): Make `ultralight' and `extralight'
mean the same thing.
---
src/haiku_font_support.cc | 12 +++++-------
src/haiku_support.h | 2 --
src/haikufont.c | 8 ++------
3 files changed, 7 insertions(+), 15 deletions(-)
diff --git a/src/haiku_font_support.cc b/src/haiku_font_support.cc
index de55ad2001..1156f0bced 100644
--- a/src/haiku_font_support.cc
+++ b/src/haiku_font_support.cc
@@ -305,9 +305,8 @@ font_style_to_flags (char *st, struct haiku_font_pattern
*pattern)
{
if (token && !strcmp (token, "Thin"))
pattern->weight = HAIKU_THIN;
- else if (token && !strcmp (token, "UltraLight"))
- pattern->weight = HAIKU_ULTRALIGHT;
- else if (token && !strcmp (token, "ExtraLight"))
+ else if (token && (!strcmp (token, "UltraLight")
+ || !strcmp (token, "ExtraLight")))
pattern->weight = HAIKU_EXTRALIGHT;
else if (token && !strcmp (token, "Light"))
pattern->weight = HAIKU_LIGHT;
@@ -330,12 +329,11 @@ font_style_to_flags (char *st, struct haiku_font_pattern
*pattern)
pattern->weight = HAIKU_SEMI_BOLD;
else if (token && !strcmp (token, "Bold"))
pattern->weight = HAIKU_BOLD;
- else if (token && (!strcmp (token, "ExtraBold") ||
+ else if (token && (!strcmp (token, "ExtraBold")
/* This has actually been seen in the wild. */
- !strcmp (token, "Extrabold")))
+ || !strcmp (token, "Extrabold")
+ || !strcmp (token, "UltraBold")))
pattern->weight = HAIKU_EXTRA_BOLD;
- else if (token && !strcmp (token, "UltraBold"))
- pattern->weight = HAIKU_ULTRA_BOLD;
else if (token && !strcmp (token, "Book"))
pattern->weight = HAIKU_BOOK;
else if (token && !strcmp (token, "Heavy"))
diff --git a/src/haiku_support.h b/src/haiku_support.h
index efce63b478..056063864e 100644
--- a/src/haiku_support.h
+++ b/src/haiku_support.h
@@ -290,7 +290,6 @@ enum haiku_font_weight
{
NO_WEIGHT = -1,
HAIKU_THIN = 0,
- HAIKU_ULTRALIGHT = 20,
HAIKU_EXTRALIGHT = 40,
HAIKU_LIGHT = 50,
HAIKU_SEMI_LIGHT = 75,
@@ -298,7 +297,6 @@ enum haiku_font_weight
HAIKU_SEMI_BOLD = 180,
HAIKU_BOLD = 200,
HAIKU_EXTRA_BOLD = 205,
- HAIKU_ULTRA_BOLD = 210,
HAIKU_BOOK = 400,
HAIKU_HEAVY = 800,
HAIKU_ULTRA_HEAVY = 900,
diff --git a/src/haikufont.c b/src/haikufont.c
index 3607012f6c..db2ba326e0 100644
--- a/src/haikufont.c
+++ b/src/haikufont.c
@@ -208,8 +208,6 @@ haikufont_weight_to_lisp (int weight)
{
case HAIKU_THIN:
return Qthin;
- case HAIKU_ULTRALIGHT:
- return Qultra_light;
case HAIKU_EXTRALIGHT:
return Qextra_light;
case HAIKU_LIGHT:
@@ -224,8 +222,6 @@ haikufont_weight_to_lisp (int weight)
return Qbold;
case HAIKU_EXTRA_BOLD:
return Qextra_bold;
- case HAIKU_ULTRA_BOLD:
- return Qultra_bold;
case HAIKU_BOOK:
return Qbook;
case HAIKU_HEAVY:
@@ -246,7 +242,7 @@ haikufont_lisp_to_weight (Lisp_Object weight)
if (EQ (weight, Qthin))
return HAIKU_THIN;
if (EQ (weight, Qultra_light))
- return HAIKU_ULTRALIGHT;
+ return HAIKU_EXTRALIGHT;
if (EQ (weight, Qextra_light))
return HAIKU_EXTRALIGHT;
if (EQ (weight, Qlight))
@@ -262,7 +258,7 @@ haikufont_lisp_to_weight (Lisp_Object weight)
if (EQ (weight, Qextra_bold))
return HAIKU_EXTRA_BOLD;
if (EQ (weight, Qultra_bold))
- return HAIKU_ULTRA_BOLD;
+ return HAIKU_EXTRA_BOLD;
if (EQ (weight, Qbook))
return HAIKU_BOOK;
if (EQ (weight, Qheavy))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master f70dfb74cc: Fix handling of some weights in the Haiku font driver,
Po Lu <=