Merge "Slightly more precise RTL check in BoringLayout.isBoring()" into mnc-dev
diff --git a/core/java/android/text/BoringLayout.java b/core/java/android/text/BoringLayout.java
index e78cf8f..aa8b71c 100644
--- a/core/java/android/text/BoringLayout.java
+++ b/core/java/android/text/BoringLayout.java
@@ -269,7 +269,15 @@
for (int a = 0; a < n; a++) {
char c = temp[a];
- if (c == '\n' || c == '\t' || c >= FIRST_RIGHT_TO_LEFT) {
+ if (c == '\n' || c == '\t' ||
+ (c >= 0x0590 && c <= 0x08FF) || // RTL scripts
+ c == 0x200F || // Bidi format character
+ (c >= 0x202A && c <= 0x202E) || // Bidi format characters
+ (c >= 0x2066 && c <= 0x2069) || // Bidi format characters
+ (c >= 0xD800 && c <= 0xDFFF) || // surrogate pairs
+ (c >= 0xFB1D && c <= 0xFDFF) || // Hebrew and Arabic presentation forms
+ (c >= 0xFE70 && c <= 0xFEFE) // Arabic presentation forms
+ ) {
boring = false;
break outer;
}