Loading libs/hwui/hwui/Canvas.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -151,7 +151,7 @@ void Canvas::drawGlyphs(const minikin::Font& font, const int* glyphIds, const fl memcpy(outPositions, positions, sizeof(float) * 2 * glyphCount); }; const minikin::MinikinFont* minikinFont = font.typeface().get(); const minikin::MinikinFont* minikinFont = font.baseTypeface().get(); SkFont* skfont = &copied.getSkFont(); MinikinFontSkia::populateSkFont(skfont, minikinFont, minikin::FontFakery()); Loading libs/hwui/hwui/MinikinUtils.h +1 −1 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ public: size_t start = 0; size_t nGlyphs = layout.nGlyphs(); for (size_t i = 0; i < nGlyphs; i++) { const minikin::MinikinFont* nextFont = layout.getFont(i)->typeface().get(); const minikin::MinikinFont* nextFont = layout.typeface(i).get(); if (i > 0 && nextFont != curFont) { SkFont* skfont = &paint->getSkFont(); MinikinFontSkia::populateSkFont(skfont, curFont, layout.getFakery(start)); Loading libs/hwui/hwui/Typeface.cpp +2 −3 Original line number Diff line number Diff line Loading @@ -140,9 +140,8 @@ Typeface* Typeface::createFromFamilies(std::vector<std::shared_ptr<minikin::Font const minikin::FontStyle defaultStyle; const minikin::MinikinFont* mf = families.empty() ? nullptr : families[0]->getClosestMatch(defaultStyle).font->typeface().get(); families.empty() ? nullptr : families[0]->getClosestMatch(defaultStyle).typeface().get(); if (mf != nullptr) { SkTypeface* skTypeface = reinterpret_cast<const MinikinFontSkia*>(mf)->GetSkTypeface(); const SkFontStyle& style = skTypeface->fontStyle(); Loading libs/hwui/jni/Paint.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ namespace PaintGlue { minikin::FakedFont baseFont = typeface->fFontCollection->baseFontFaked(typeface->fStyle); float saveSkewX = font->getSkewX(); bool savefakeBold = font->isEmbolden(); MinikinFontSkia::populateSkFont(font, baseFont.font->typeface().get(), baseFont.fakery); MinikinFontSkia::populateSkFont(font, baseFont.typeface().get(), baseFont.fakery); SkScalar spacing = font->getMetrics(metrics); // The populateSkPaint call may have changed fake bold / text skew // because we want to measure with those effects applied, so now Loading libs/hwui/jni/fonts/Font.cpp +10 −10 Original line number Diff line number Diff line Loading @@ -127,7 +127,7 @@ static jlong Font_Builder_build(JNIEnv* env, jobject clazz, jlong builderPtr, jo static jlong Font_Builder_clone(JNIEnv* env, jobject clazz, jlong fontPtr, jlong builderPtr, jint weight, jboolean italic, jint ttcIndex) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); std::unique_ptr<NativeFontBuilder> builder(toBuilder(builderPtr)); // Reconstruct SkTypeface with different arguments from existing SkTypeface. Loading Loading @@ -159,7 +159,7 @@ static jlong Font_Builder_clone(JNIEnv* env, jobject clazz, jlong fontPtr, jlong static jfloat Font_getGlyphBounds(JNIEnv* env, jobject, jlong fontHandle, jint glyphId, jlong paintHandle, jobject rect) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontHandle); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); Paint* paint = reinterpret_cast<Paint*>(paintHandle); SkFont* skFont = &paint->getSkFont(); Loading @@ -179,7 +179,7 @@ static jfloat Font_getGlyphBounds(JNIEnv* env, jobject, jlong fontHandle, jint g static jfloat Font_getFontMetrics(JNIEnv* env, jobject, jlong fontHandle, jlong paintHandle, jobject metricsObj) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontHandle); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); Paint* paint = reinterpret_cast<Paint*>(paintHandle); SkFont* skFont = &paint->getSkFont(); Loading Loading @@ -209,7 +209,7 @@ static jlong Font_cloneFont(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { // Fast Native static jobject Font_newByteBuffer(JNIEnv* env, jobject, jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return env->NewDirectByteBuffer(const_cast<void*>(minikinFont->GetFontData()), minikinFont->GetFontSize()); } Loading @@ -217,7 +217,7 @@ static jobject Font_newByteBuffer(JNIEnv* env, jobject, jlong fontPtr) { // Critical Native static jlong Font_getBufferAddress(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); return reinterpret_cast<jlong>(font->font->typeface()->GetFontData()); return reinterpret_cast<jlong>(font->font->baseTypeface()->GetFontData()); } // Critical Native Loading @@ -236,7 +236,7 @@ static jstring Font_getFontPath(JNIEnv* env, jobject, jlong fontPtr) { } return env->NewStringUTF(path.c_str()); } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); const std::string& path = minikinFont->GetFontPath(); if (path.empty()) { return nullptr; Loading Loading @@ -275,7 +275,7 @@ static jint Font_getIndex(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { reader.skipString(); // fontPath return reader.read<int>(); } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return minikinFont->GetFontIndex(); } } Loading @@ -289,7 +289,7 @@ static jint Font_getAxisCount(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { reader.skip<int>(); // fontIndex return reader.readArray<minikin::FontVariation>().second; } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return minikinFont->GetAxes().size(); } } Loading @@ -304,7 +304,7 @@ static jlong Font_getAxisInfo(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr, jint inde reader.skip<int>(); // fontIndex var = reader.readArray<minikin::FontVariation>().first[index]; } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); var = minikinFont->GetAxes().at(index); } uint32_t floatBinary = *reinterpret_cast<const uint32_t*>(&var.value); Loading @@ -314,7 +314,7 @@ static jlong Font_getAxisInfo(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr, jint inde // Critical Native static jint Font_getSourceId(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); return font->font->typeface()->GetSourceId(); return font->font->baseTypeface()->GetSourceId(); } static jlongArray Font_getAvailableFontSet(JNIEnv* env, jobject) { Loading Loading
libs/hwui/hwui/Canvas.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -151,7 +151,7 @@ void Canvas::drawGlyphs(const minikin::Font& font, const int* glyphIds, const fl memcpy(outPositions, positions, sizeof(float) * 2 * glyphCount); }; const minikin::MinikinFont* minikinFont = font.typeface().get(); const minikin::MinikinFont* minikinFont = font.baseTypeface().get(); SkFont* skfont = &copied.getSkFont(); MinikinFontSkia::populateSkFont(skfont, minikinFont, minikin::FontFakery()); Loading
libs/hwui/hwui/MinikinUtils.h +1 −1 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ public: size_t start = 0; size_t nGlyphs = layout.nGlyphs(); for (size_t i = 0; i < nGlyphs; i++) { const minikin::MinikinFont* nextFont = layout.getFont(i)->typeface().get(); const minikin::MinikinFont* nextFont = layout.typeface(i).get(); if (i > 0 && nextFont != curFont) { SkFont* skfont = &paint->getSkFont(); MinikinFontSkia::populateSkFont(skfont, curFont, layout.getFakery(start)); Loading
libs/hwui/hwui/Typeface.cpp +2 −3 Original line number Diff line number Diff line Loading @@ -140,9 +140,8 @@ Typeface* Typeface::createFromFamilies(std::vector<std::shared_ptr<minikin::Font const minikin::FontStyle defaultStyle; const minikin::MinikinFont* mf = families.empty() ? nullptr : families[0]->getClosestMatch(defaultStyle).font->typeface().get(); families.empty() ? nullptr : families[0]->getClosestMatch(defaultStyle).typeface().get(); if (mf != nullptr) { SkTypeface* skTypeface = reinterpret_cast<const MinikinFontSkia*>(mf)->GetSkTypeface(); const SkFontStyle& style = skTypeface->fontStyle(); Loading
libs/hwui/jni/Paint.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -583,7 +583,7 @@ namespace PaintGlue { minikin::FakedFont baseFont = typeface->fFontCollection->baseFontFaked(typeface->fStyle); float saveSkewX = font->getSkewX(); bool savefakeBold = font->isEmbolden(); MinikinFontSkia::populateSkFont(font, baseFont.font->typeface().get(), baseFont.fakery); MinikinFontSkia::populateSkFont(font, baseFont.typeface().get(), baseFont.fakery); SkScalar spacing = font->getMetrics(metrics); // The populateSkPaint call may have changed fake bold / text skew // because we want to measure with those effects applied, so now Loading
libs/hwui/jni/fonts/Font.cpp +10 −10 Original line number Diff line number Diff line Loading @@ -127,7 +127,7 @@ static jlong Font_Builder_build(JNIEnv* env, jobject clazz, jlong builderPtr, jo static jlong Font_Builder_clone(JNIEnv* env, jobject clazz, jlong fontPtr, jlong builderPtr, jint weight, jboolean italic, jint ttcIndex) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); std::unique_ptr<NativeFontBuilder> builder(toBuilder(builderPtr)); // Reconstruct SkTypeface with different arguments from existing SkTypeface. Loading Loading @@ -159,7 +159,7 @@ static jlong Font_Builder_clone(JNIEnv* env, jobject clazz, jlong fontPtr, jlong static jfloat Font_getGlyphBounds(JNIEnv* env, jobject, jlong fontHandle, jint glyphId, jlong paintHandle, jobject rect) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontHandle); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); Paint* paint = reinterpret_cast<Paint*>(paintHandle); SkFont* skFont = &paint->getSkFont(); Loading @@ -179,7 +179,7 @@ static jfloat Font_getGlyphBounds(JNIEnv* env, jobject, jlong fontHandle, jint g static jfloat Font_getFontMetrics(JNIEnv* env, jobject, jlong fontHandle, jlong paintHandle, jobject metricsObj) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontHandle); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->typeface().get()); MinikinFontSkia* minikinSkia = static_cast<MinikinFontSkia*>(font->font->baseTypeface().get()); Paint* paint = reinterpret_cast<Paint*>(paintHandle); SkFont* skFont = &paint->getSkFont(); Loading Loading @@ -209,7 +209,7 @@ static jlong Font_cloneFont(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { // Fast Native static jobject Font_newByteBuffer(JNIEnv* env, jobject, jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return env->NewDirectByteBuffer(const_cast<void*>(minikinFont->GetFontData()), minikinFont->GetFontSize()); } Loading @@ -217,7 +217,7 @@ static jobject Font_newByteBuffer(JNIEnv* env, jobject, jlong fontPtr) { // Critical Native static jlong Font_getBufferAddress(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); return reinterpret_cast<jlong>(font->font->typeface()->GetFontData()); return reinterpret_cast<jlong>(font->font->baseTypeface()->GetFontData()); } // Critical Native Loading @@ -236,7 +236,7 @@ static jstring Font_getFontPath(JNIEnv* env, jobject, jlong fontPtr) { } return env->NewStringUTF(path.c_str()); } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); const std::string& path = minikinFont->GetFontPath(); if (path.empty()) { return nullptr; Loading Loading @@ -275,7 +275,7 @@ static jint Font_getIndex(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { reader.skipString(); // fontPath return reader.read<int>(); } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return minikinFont->GetFontIndex(); } } Loading @@ -289,7 +289,7 @@ static jint Font_getAxisCount(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { reader.skip<int>(); // fontIndex return reader.readArray<minikin::FontVariation>().second; } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); return minikinFont->GetAxes().size(); } } Loading @@ -304,7 +304,7 @@ static jlong Font_getAxisInfo(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr, jint inde reader.skip<int>(); // fontIndex var = reader.readArray<minikin::FontVariation>().first[index]; } else { const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->typeface(); const std::shared_ptr<minikin::MinikinFont>& minikinFont = font->font->baseTypeface(); var = minikinFont->GetAxes().at(index); } uint32_t floatBinary = *reinterpret_cast<const uint32_t*>(&var.value); Loading @@ -314,7 +314,7 @@ static jlong Font_getAxisInfo(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr, jint inde // Critical Native static jint Font_getSourceId(CRITICAL_JNI_PARAMS_COMMA jlong fontPtr) { FontWrapper* font = reinterpret_cast<FontWrapper*>(fontPtr); return font->font->typeface()->GetSourceId(); return font->font->baseTypeface()->GetSourceId(); } static jlongArray Font_getAvailableFontSet(JNIEnv* env, jobject) { Loading