diff options
-rw-r--r-- | WebKit/android/jni/WebViewCore.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/WebKit/android/jni/WebViewCore.cpp b/WebKit/android/jni/WebViewCore.cpp index 228c16b..c62ae0e 100644 --- a/WebKit/android/jni/WebViewCore.cpp +++ b/WebKit/android/jni/WebViewCore.cpp @@ -1346,9 +1346,15 @@ WebCore::HTMLAnchorElement* WebViewCore::retrieveAnchorElement(int x, int y) return 0; } Node* node = hitTestResult.innerNode(); - if (!node->hasTagName(WebCore::HTMLNames::aTag)) + Node* element = node; + while (element && !element->isElementNode()) + element = element->parentNode(); + DBG_NAV_LOGD("node=%p element=%p x=%d y=%d nodeName=%s tagName=%s", node, + element, x, y, node->nodeName().utf8().data(), + ((Element*) element)->tagName().utf8().data()); + if (!element->hasTagName(WebCore::HTMLNames::aTag)) return 0; - return static_cast<WebCore::HTMLAnchorElement*>(node); + return static_cast<WebCore::HTMLAnchorElement*>(element); } WTF::String WebViewCore::retrieveHref(int x, int y) |