diff options
author | 2014-08-06 16:34:40 -0400 | |
---|---|---|
committer | 2014-08-06 16:34:40 -0400 | |
commit | da7a944e293d27ec5c7be06b224921ae0058d35a (patch) | |
tree | 70a6553ab4cc08b0a862e7f68f4510c3d73c06c7 /src/ports/SkFontConfigInterface_android.cpp | |
parent | c7f069b50184cf786b46e20e3ba8431d8c82472a (diff) |
Revert "Remove SkPaintOptionsAndroid"
This reverts commit 27fb94999b8eec448423884e1d071e563c4c95d9.
Review URL: https://codereview.chromium.org/450513002
Diffstat (limited to 'src/ports/SkFontConfigInterface_android.cpp')
-rw-r--r-- | src/ports/SkFontConfigInterface_android.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/ports/SkFontConfigInterface_android.cpp b/src/ports/SkFontConfigInterface_android.cpp index af0c0ebdbe..1651ac9c05 100644 --- a/src/ports/SkFontConfigInterface_android.cpp +++ b/src/ports/SkFontConfigInterface_android.cpp @@ -69,8 +69,7 @@ struct FamilyRec { FontRecID fFontRecID[FONT_STYLE_COUNT]; bool fIsFallbackFont; SkString fFallbackName; - SkLanguage fLanguage; - FontVariant fVariant; + SkPaintOptionsAndroid fPaintOptions; }; @@ -253,8 +252,12 @@ SkFontConfigInterfaceAndroid::SkFontConfigInterfaceAndroid(SkTDArray<FontFamily* fontRec.fFamilyRecID = familyRecID; familyRec->fIsFallbackFont = family->fIsFallbackFont; - familyRec->fLanguage = family->fLanguage; - familyRec->fVariant = family->fVariant; + familyRec->fPaintOptions = family->fFontFiles[j].fPaintOptions; + + } else if (familyRec->fPaintOptions != family->fFontFiles[j].fPaintOptions) { + SkDebugf("Every font file within a family must have identical" + "language and variant attributes"); + sk_throw(); } // add this font to the current familyRec @@ -302,7 +305,7 @@ SkFontConfigInterfaceAndroid::SkFontConfigInterfaceAndroid(SkTDArray<FontFamily* while(fallbackLang != NULL) { for (int i = 0; i < fDefaultFallbackList.count(); i++) { FamilyRecID familyRecID = fDefaultFallbackList[i]; - const SkString& fontLang = fFontFamilies[familyRecID].fLanguage.getTag(); + const SkString& fontLang = fFontFamilies[familyRecID].fPaintOptions.getLanguage().getTag(); if (strcmp(fallbackLang, fontLang.c_str()) != 0) { fallbackList->push(familyRecID); } @@ -337,7 +340,7 @@ void SkFontConfigInterfaceAndroid::addFallbackFamily(FamilyRecID familyRecID) { fDefaultFallbackList.push(familyRecID); // stop here if it is the default language tag - const SkString& languageTag = familyRec.fLanguage.getTag(); + const SkString& languageTag = familyRec.fPaintOptions.getLanguage().getTag(); if (languageTag.isEmpty()) { return; } @@ -508,9 +511,9 @@ bool SkFontConfigInterfaceAndroid::getFallbackFamilyNameForChar(SkUnichar uni, FamilyRecID familyRecID = fallbackFontList->getAt(i); // if it is not one of the accepted variants then move to the next family - int32_t acceptedVariants = kDefault_FontVariant | - kElegant_FontVariant; - if (!(fFontFamilies[familyRecID].fVariant & acceptedVariants)) { + int32_t acceptedVariants = SkPaintOptionsAndroid::kDefault_Variant | + SkPaintOptionsAndroid::kElegant_Variant; + if (!(fFontFamilies[familyRecID].fPaintOptions.getFontVariant() & acceptedVariants)) { continue; } |