Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ce95c69 authored by Seigo Nonaka's avatar Seigo Nonaka
Browse files

Handle private API usage from System UI

Bug: 379218341
Test: Manually done
Flag: com.android.text.flags.typeface_redesign_readonly
Change-Id: Ic11af04581186cd30f1588b6b1489897eb4cafe6
parent b5664e8e
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -48,7 +48,14 @@ minikin::MinikinPaint MinikinUtils::prepareMinikinPaint(const Paint* paint,
    minikinPaint.localeListId = paint->getMinikinLocaleListId();
    minikinPaint.fontStyle = resolvedFace->fStyle;
    minikinPaint.fontFeatureSettings = paint->getFontFeatureSettings();
    if (!resolvedFace->fIsVariationInstance) {
        // This is an optimization for direct private API use typically done by System UI.
        // In the public API surface, if Typeface is already configured for variation instance
        // (Target SDK <= 35) the font variation settings of Paint is not set.
        // On the other hand, if Typeface is not configured so (Target SDK >= 36), the font
        // variation settings are configured dynamically.
        minikinPaint.fontVariationSettings = paint->getFontVariationOverride();
    }
    minikinPaint.verticalText = paint->isVerticalText();

    const std::optional<minikin::FamilyVariant>& familyVariant = paint->getFamilyVariant();