Index: Source/platform/fonts/FontDescription.cpp |
diff --git a/Source/platform/fonts/FontDescription.cpp b/Source/platform/fonts/FontDescription.cpp |
index d5fad42b525a26d057f6288d25ea6649b66da1a9..829d815d24a66b92979278a8484d180831b93b64 100644 |
--- a/Source/platform/fonts/FontDescription.cpp |
+++ b/Source/platform/fonts/FontDescription.cpp |
@@ -101,6 +101,18 @@ FontTraits FontDescription::traits() const |
return FontTraits(style(), variant(), weight(), stretch()); |
} |
+FontDescription::VariantLigatures FontDescription::variantLigatures() const |
+{ |
+ VariantLigatures ligatures; |
+ |
+ ligatures.common = commonLigaturesState(); |
+ ligatures.discretionary = discretionaryLigaturesState(); |
+ ligatures.historical = historicalLigaturesState(); |
+ ligatures.contextual = contextualLigaturesState(); |
+ |
+ return ligatures; |
+} |
+ |
void FontDescription::setTraits(FontTraits traits) |
{ |
setStyle(traits.style()); |
@@ -109,6 +121,16 @@ void FontDescription::setTraits(FontTraits traits) |
setStretch(traits.stretch()); |
} |
+void FontDescription::setVariantLigatures(const VariantLigatures& ligatures) |
+{ |
+ m_commonLigaturesState = ligatures.common; |
+ m_discretionaryLigaturesState = ligatures.discretionary; |
+ m_historicalLigaturesState = ligatures.historical; |
+ m_contextualLigaturesState = ligatures.contextual; |
+ |
+ updateTypesettingFeatures(); |
+} |
+ |
FontDescription FontDescription::makeNormalFeatureSettings() const |
{ |
FontDescription normalDescription(*this); |