diff options
Diffstat (limited to 'Source/WebCore/rendering/RenderFrameBase.cpp')
-rw-r--r-- | Source/WebCore/rendering/RenderFrameBase.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/WebCore/rendering/RenderFrameBase.cpp b/Source/WebCore/rendering/RenderFrameBase.cpp index be92c0fa8..da2dc5a12 100644 --- a/Source/WebCore/rendering/RenderFrameBase.cpp +++ b/Source/WebCore/rendering/RenderFrameBase.cpp @@ -114,10 +114,11 @@ bool RenderFrameBase::nodeAtPoint(const HitTestRequest& request, HitTestResult& if (childRoot) { LayoutPoint adjustedLocation = accumulatedOffset + location(); - HitTestLocation newHitTestLocation(locationInContainer, -toLayoutSize(adjustedLocation)); + LayoutPoint contentOffset = LayoutPoint(borderLeft() + paddingLeft(), borderTop() + paddingTop()) - childFrameView->scrollOffset(); + HitTestLocation newHitTestLocation(locationInContainer, -adjustedLocation - contentOffset); HitTestRequest newHitTestRequest(request.type() | HitTestRequest::ChildFrameHitTest); - bool isInsideChildFrame = childRoot->layer()->hitTest(newHitTestRequest, newHitTestLocation, result); + bool isInsideChildFrame = childRoot->hitTest(newHitTestRequest, newHitTestLocation, result); if (isInsideChildFrame) return true; |