summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/android/text/flags/flags.aconfig10
-rw-r--r--core/java/android/widget/TextView.java6
2 files changed, 15 insertions, 1 deletions
diff --git a/core/java/android/text/flags/flags.aconfig b/core/java/android/text/flags/flags.aconfig
index 785b1b2c49e4..7023ef7afd2f 100644
--- a/core/java/android/text/flags/flags.aconfig
+++ b/core/java/android/text/flags/flags.aconfig
@@ -201,3 +201,13 @@ flag {
purpose: PURPOSE_BUGFIX
}
}
+
+flag {
+ name: "fix_null_typeface_bolding"
+ namespace: "text"
+ description: "Use a bold typeface when bolding is enabled and the original typeface is null"
+ bug: "314811487"
+ metadata {
+ purpose: PURPOSE_BUGFIX
+ }
+}
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
index 78dd3b18c2a6..fd3837f3fe12 100644
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -4817,7 +4817,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
if (mFontWeightAdjustment != 0
&& mFontWeightAdjustment != Configuration.FONT_WEIGHT_ADJUSTMENT_UNDEFINED) {
if (tf == null) {
- tf = Typeface.DEFAULT;
+ if (Flags.fixNullTypefaceBolding()) {
+ tf = Typeface.DEFAULT_BOLD;
+ } else {
+ tf = Typeface.DEFAULT;
+ }
} else {
int newWeight = Math.min(
Math.max(tf.getWeight() + mFontWeightAdjustment, FontStyle.FONT_WEIGHT_MIN),