From 85c3dc281c618004b3ebae0fb1614c7706377c90 Mon Sep 17 00:00:00 2001 From: Hawkwood Glazier Date: Mon, 24 Apr 2023 15:53:17 +0000 Subject: [PATCH] Use FontVariationCache on TextInterpolator font runs Bug: 278470896 Test: Checked device code for hiccups Change-Id: I5aa9c0341d4e1a94a220ec943ada28104681bf03 --- .../android/systemui/animation/TextInterpolator.kt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/SystemUI/animation/src/com/android/systemui/animation/TextInterpolator.kt b/packages/SystemUI/animation/src/com/android/systemui/animation/TextInterpolator.kt index a041926bf5d2d..79189bc3e5c3c 100644 --- a/packages/SystemUI/animation/src/com/android/systemui/animation/TextInterpolator.kt +++ b/packages/SystemUI/animation/src/com/android/systemui/animation/TextInterpolator.kt @@ -217,12 +217,14 @@ class TextInterpolator( run.fontRuns.forEach { fontRun -> fontRun.baseFont = fontInterpolator.lerp(fontRun.baseFont, fontRun.targetFont, progress) - val tmpFontVariationsArray = mutableListOf() - fontRun.baseFont.axes.forEach { - tmpFontVariationsArray.add(FontVariationAxis(it.tag, it.styleValue)) - } - basePaint.fontVariationSettings = + val fvar = run { + val tmpFontVariationsArray = mutableListOf() + fontRun.baseFont.axes.forEach { + tmpFontVariationsArray.add(FontVariationAxis(it.tag, it.styleValue)) + } FontVariationAxis.toFontVariationSettings(tmpFontVariationsArray) + } + basePaint.typeface = typefaceCache.getTypefaceForVariant(fvar, basePaint) } } }