diff options
| author | Rod S <rsheeter@google.com> | 2020-03-14 16:16:45 -0700 |
|---|---|---|
| committer | Roderick Sheeter <rsheeter@google.com> | 2020-03-19 23:12:53 +0000 |
| commit | b573a9d94957fd6a27f950bedfc60392bf60f90a (patch) | |
| tree | 4c69e8fee081456572b0184910f28c334c9b50e1 /core/java/android/text/AndroidBidi.java | |
| parent | f75c281d9cd49b0fc081d278cd6404952e004aab (diff) | |
Update frameworks/base Emoji.java to Unicode 13.
As ICU is updated, delete special cases.
Test: atest core/tests/coretests/src/android/text/EmojiTest.java
Bug: 151964652
Change-Id: I89032c22e5464d257866d926062db34c65943572
(cherry picked from commit 31d7c155b7f58525f13c5fd1f0eae450e97c1080)
Diffstat (limited to 'core/java/android/text/AndroidBidi.java')
| -rw-r--r-- | core/java/android/text/AndroidBidi.java | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/core/java/android/text/AndroidBidi.java b/core/java/android/text/AndroidBidi.java index f1e2181a8538..b9811638b28f 100644 --- a/core/java/android/text/AndroidBidi.java +++ b/core/java/android/text/AndroidBidi.java @@ -17,11 +17,7 @@ package android.text; import android.compat.annotation.UnsupportedAppUsage; -import android.icu.lang.UCharacter; -import android.icu.lang.UCharacterDirection; -import android.icu.lang.UProperty; import android.icu.text.Bidi; -import android.icu.text.BidiClassifier; import android.text.Layout.Directions; import com.android.internal.annotations.VisibleForTesting; @@ -34,32 +30,6 @@ import com.android.internal.annotations.VisibleForTesting; public class AndroidBidi { /** - * Overrides ICU {@link BidiClassifier} in order to correctly handle character directions for - * newest emoji that ICU is not aware of. - */ - public static class EmojiBidiOverride extends BidiClassifier { - public EmojiBidiOverride() { - super(null /* No persisting object needed */); - } - - // Tells ICU to use the standard Unicode value. - private static final int NO_OVERRIDE = - UCharacter.getIntPropertyMaxValue(UProperty.BIDI_CLASS) + 1; - - @Override - public int classify(int c) { - if (Emoji.isNewEmoji(c)) { - // All new emoji characters in Unicode 10.0 are of the bidi class ON. - return UCharacterDirection.OTHER_NEUTRAL; - } else { - return NO_OVERRIDE; - } - } - } - - private static final EmojiBidiOverride sEmojiBidiOverride = new EmojiBidiOverride(); - - /** * Runs the bidi algorithm on input text. */ @UnsupportedAppUsage @@ -82,7 +52,6 @@ public class AndroidBidi { default: paraLevel = Bidi.LTR; break; } final Bidi icuBidi = new Bidi(length /* maxLength */, 0 /* maxRunCount */); - icuBidi.setCustomClassifier(sEmojiBidiOverride); icuBidi.setPara(chs, paraLevel, null /* embeddingLevels */); for (int i = 0; i < length; i++) { chInfo[i] = icuBidi.getLevelAt(i); @@ -220,4 +189,5 @@ public class AndroidBidi { } return new Directions(ld); } -}
\ No newline at end of file +} + |
