diff options
author | 2025-02-22 12:19:29 +0900 | |
---|---|---|
committer | 2025-02-22 12:19:29 +0900 | |
commit | 66e5dbdbc143bcf7daf62269270f8979c4923df2 (patch) | |
tree | ddfd24fbf820237d1189d1487f2cf6a1ce2740f2 | |
parent | 4113b5f3ba34ba332c3f4be0bc2c5a42f0bdb26e (diff) |
Address API council feedback: align with existing API
To align the similar behavior with setFontVariationSettings,
throws IllegalArgumentException in case of invalid syntax.
Bug: 389111359
Test: atest PaintTest
Flag: com.android.text.flags.typeface_redesign_readonly
Change-Id: Idd2e53964bccc6412c81307d969b6d9cc944be77
-rw-r--r-- | core/api/current.txt | 2 | ||||
-rw-r--r-- | graphics/java/android/graphics/Paint.java | 18 |
2 files changed, 7 insertions, 13 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 9ebb5068bf19..91e466dc1f12 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -16993,7 +16993,7 @@ package android.graphics { method public void setFilterBitmap(boolean); method public void setFlags(int); method public void setFontFeatureSettings(String); - method @FlaggedApi("com.android.text.flags.typeface_redesign_readonly") public boolean setFontVariationOverride(@Nullable String); + method @FlaggedApi("com.android.text.flags.typeface_redesign_readonly") public void setFontVariationOverride(@Nullable String); method public boolean setFontVariationSettings(String); method public void setHinting(int); method public void setLetterSpacing(float); diff --git a/graphics/java/android/graphics/Paint.java b/graphics/java/android/graphics/Paint.java index 3d4dccf095f5..bbcd5e3ad5e5 100644 --- a/graphics/java/android/graphics/Paint.java +++ b/graphics/java/android/graphics/Paint.java @@ -2205,26 +2205,21 @@ public class Paint { * @param fontVariationOverride font variation override. You can pass null or empty string for * clearing font variation override. * - * @return true if the provided font variation settings is valid. Otherwise returns false. - * + * @throws IllegalArgumentException If given string is not a valid font variation settings + * format * @see #getFontVariationSettings() * @see #setFontVariationSettings(String) * @see #getFontVariationOverride() * @see FontVariationAxis */ @FlaggedApi(FLAG_TYPEFACE_REDESIGN_READONLY) - public boolean setFontVariationOverride(@Nullable String fontVariationOverride) { + public void setFontVariationOverride(@Nullable String fontVariationOverride) { if (Objects.equals(fontVariationOverride, mFontVariationOverride)) { - return true; + return; } - List<FontVariationAxis> axes; - try { - axes = FontVariationAxis.fromFontVariationSettingsForList(fontVariationOverride); - } catch (IllegalArgumentException e) { - Log.i(TAG, "failed to parse font variation settings.", e); - return false; - } + List<FontVariationAxis> axes = + FontVariationAxis.fromFontVariationSettingsForList(fontVariationOverride); long builderPtr = nCreateFontVariationBuilder(axes.size()); for (int i = 0; i < axes.size(); ++i) { FontVariationAxis axis = axes.get(i); @@ -2233,7 +2228,6 @@ public class Paint { } nSetFontVariationOverride(mNativePaint, builderPtr); mFontVariationOverride = fontVariationOverride; - return true; } /** |