Fix Paint_Delegate with missing native method.
Change-Id: I39638dcb323fdd1ec3cb58dcad05757145d09026
diff --git a/bridge/src/android/graphics/Paint_Delegate.java b/bridge/src/android/graphics/Paint_Delegate.java
index 9ebec61..1382641 100644
--- a/bridge/src/android/graphics/Paint_Delegate.java
+++ b/bridge/src/android/graphics/Paint_Delegate.java
@@ -36,6 +36,7 @@
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Locale;
/**
* Delegate implementing the native methods of android.graphics.Paint
@@ -91,6 +92,8 @@
private MaskFilter_Delegate mMaskFilter;
private Rasterizer_Delegate mRasterizer;
+ private Locale mLocale = Locale.getDefault();
+
// ---- Public Helper methods ----
@@ -254,6 +257,8 @@
return delegate.mFlags;
}
+
+
@LayoutlibDelegate
/*package*/ static void setFlags(Paint thisPaint, int flags) {
// get the delegate from the native int.
@@ -904,6 +909,17 @@
}
@LayoutlibDelegate
+ /*package*/ static void native_setTextLocale(int native_object, String locale) {
+ // get the delegate from the native int.
+ Paint_Delegate delegate = sManager.getDelegate(native_object);
+ if (delegate == null) {
+ return;
+ }
+
+ delegate.setTextLocale(locale);
+ }
+
+ @LayoutlibDelegate
/*package*/ static int native_getTextWidths(int native_object, char[] text, int index,
int count, float[] widths) {
// get the delegate from the native int.
@@ -1243,7 +1259,9 @@
return 0;
}
-
+ private void setTextLocale(String locale) {
+ mLocale = new Locale(locale);
+ }
private static void setFlag(Paint thisPaint, int flagMask, boolean flagValue) {
// get the delegate from the native int.
@@ -1258,4 +1276,5 @@
delegate.mFlags &= ~flagMask;
}
}
+
}