diff options
author | John Reck <jreck@google.com> | 2011-10-27 13:40:23 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-10-27 13:40:23 -0700 |
commit | 75fd6068b065c26beb1ce4d86090aaacbe243c22 (patch) | |
tree | b6135ddd816e0ef80d4aa6bfc7e9cf61216b1287 /Source/WebKit/android/nav/WebView.cpp | |
parent | 0b8560dee52ce9d55cda03caa5f2a3e733b55ba3 (diff) | |
parent | e94313e95fb5e08870a58c7a4b593da08cc3d424 (diff) | |
download | external_webkit-75fd6068b065c26beb1ce4d86090aaacbe243c22.zip external_webkit-75fd6068b065c26beb1ce4d86090aaacbe243c22.tar.gz external_webkit-75fd6068b065c26beb1ce4d86090aaacbe243c22.tar.bz2 |
Merge "Keep text handles in sync with native touch targets" into ics-mr1
Diffstat (limited to 'Source/WebKit/android/nav/WebView.cpp')
-rw-r--r-- | Source/WebKit/android/nav/WebView.cpp | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/Source/WebKit/android/nav/WebView.cpp b/Source/WebKit/android/nav/WebView.cpp index 46f608b..10f679d 100644 --- a/Source/WebKit/android/nav/WebView.cpp +++ b/Source/WebKit/android/nav/WebView.cpp @@ -1555,6 +1555,11 @@ void getTextSelectionRegion(SkRegion *region) m_selectText.getSelectionRegion(getVisibleRect(), region, compositeRoot()); } +void getTextSelectionHandles(int* handles) +{ + m_selectText.getSelectionHandles(handles); +} + void replaceBaseContent(PictureSet* set) { if (!m_baseLayer) @@ -1984,12 +1989,22 @@ static void nativeSetBaseLayer(JNIEnv *env, jobject obj, jint layer, jobject inv registerPageSwapCallback); } -static void nativeGetTextSelectionRegion(JNIEnv *env, jobject obj, jobject region) +static void nativeGetTextSelectionRegion(JNIEnv *env, jobject obj, jint view, + jobject region) { if (!region) return; SkRegion* nregion = GraphicsJNI::getNativeRegion(env, region); - GET_NATIVE_VIEW(env, obj)->getTextSelectionRegion(nregion); + ((WebView*)view)->getTextSelectionRegion(nregion); +} + +static void nativeGetSelectionHandles(JNIEnv *env, jobject obj, jint view, + jintArray arr) +{ + int handles[4]; + ((WebView*)view)->getTextSelectionHandles(handles); + env->SetIntArrayRegion(arr, 0, 4, handles); + checkException(env); } static BaseLayerAndroid* nativeGetBaseLayer(JNIEnv *env, jobject obj) @@ -2897,8 +2912,10 @@ static JNINativeMethod gJavaWebViewMethods[] = { (void*) nativeSetHeightCanMeasure }, { "nativeSetBaseLayer", "(ILandroid/graphics/Region;ZZZ)V", (void*) nativeSetBaseLayer }, - { "nativeGetTextSelectionRegion", "(Landroid/graphics/Region;)V", + { "nativeGetTextSelectionRegion", "(ILandroid/graphics/Region;)V", (void*) nativeGetTextSelectionRegion }, + { "nativeGetSelectionHandles", "(I[I)V", + (void*) nativeGetSelectionHandles }, { "nativeGetBaseLayer", "()I", (void*) nativeGetBaseLayer }, { "nativeReplaceBaseContent", "(I)V", |