summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaph Levien <raph@google.com>2014-06-19 18:55:15 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-06-17 21:43:29 +0000
commit17e64ffd852f8fe23b8e2e2ff1b62ee742af17a6 (patch)
tree115ebc6e43759fb16c6ae3b1155a5df0e9d94daa
parentdf2cdc951e3a24abd01e19ededda97c656b825b7 (diff)
parente368b6bcfd499543a876b4cae02f1ca563ff1cb6 (diff)
downloadframeworks_base-17e64ffd852f8fe23b8e2e2ff1b62ee742af17a6.zip
frameworks_base-17e64ffd852f8fe23b8e2e2ff1b62ee742af17a6.tar.gz
frameworks_base-17e64ffd852f8fe23b8e2e2ff1b62ee742af17a6.tar.bz2
Merge "Use Minikin grapheme cluster breaking"
-rw-r--r--core/jni/android/graphics/Paint.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/core/jni/android/graphics/Paint.cpp b/core/jni/android/graphics/Paint.cpp
index d07b154..dc30814 100644
--- a/core/jni/android/graphics/Paint.cpp
+++ b/core/jni/android/graphics/Paint.cpp
@@ -37,6 +37,7 @@
#include "TextLayout.h"
#ifdef USE_MINIKIN
+#include <minikin/GraphemeBreak.h>
#include <minikin/Layout.h>
#include "MinikinSkia.h"
#include "MinikinUtils.h"
@@ -778,6 +779,11 @@ public:
static jint doTextRunCursor(JNIEnv *env, SkPaint* paint, const jchar *text, jint start,
jint count, jint flags, jint offset, jint opt) {
+#ifdef USE_MINIKIN
+ GraphemeBreak::MoveOpt moveOpt = GraphemeBreak::MoveOpt(opt);
+ size_t result = GraphemeBreak::getTextRunCursor(text, start, count, offset, moveOpt);
+ return static_cast<jint>(result);
+#else
jfloat scalarArray[count];
TextLayout::getTextRunAdvances(paint, text, start, count, start + count, flags,
@@ -818,6 +824,7 @@ public:
}
return pos;
+#endif
}
static jint getTextRunCursor___C(JNIEnv* env, jobject clazz, jlong paintHandle, jcharArray text,