diff options
author | George Mount <mount@google.com> | 2012-02-24 07:27:54 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-02-24 07:27:54 -0800 |
commit | 0b19fab9010e8be98e5be962d403eaaa9ea14ba8 (patch) | |
tree | e52495d18f69efd4f7fbd89e365686fecfab90fc | |
parent | 9f30b61e2c62ca17fb816bff1fc612c3ebc8c4b3 (diff) | |
parent | cc95248cace682365bf4d69a0b60990799351f33 (diff) | |
download | external_webkit-0b19fab9010e8be98e5be962d403eaaa9ea14ba8.zip external_webkit-0b19fab9010e8be98e5be962d403eaaa9ea14ba8.tar.gz external_webkit-0b19fab9010e8be98e5be962d403eaaa9ea14ba8.tar.bz2 |
Merge "Selection node used for selection region rather than focus node."
-rw-r--r-- | Source/WebKit/android/jni/WebViewCore.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/Source/WebKit/android/jni/WebViewCore.cpp b/Source/WebKit/android/jni/WebViewCore.cpp index 08ad3b6..d10a7e9 100644 --- a/Source/WebKit/android/jni/WebViewCore.cpp +++ b/Source/WebKit/android/jni/WebViewCore.cpp @@ -3942,14 +3942,14 @@ void WebViewCore::updateTextSelection() AutoJObject javaObject = m_javaGlue->object(env); if (!javaObject.get()) return; - WebCore::Node* focusNode = currentFocus(); + VisibleSelection selection = focusedFrame()->selection()->selection(); int start = 0; int end = 0; - if (focusNode) - getSelectionOffsets(focusNode, start, end); - SelectText* selectText = createSelectText(focusedFrame()->selection()->selection()); + if (selection.isCaretOrRange()) + getSelectionOffsets(selection.start().anchorNode(), start, end); + SelectText* selectText = createSelectText(selection); env->CallVoidMethod(javaObject.get(), - m_javaGlue->m_updateTextSelection, reinterpret_cast<int>(focusNode), + m_javaGlue->m_updateTextSelection, reinterpret_cast<int>(currentFocus()), start, end, m_textGeneration, reinterpret_cast<int>(selectText)); checkException(env); } |