summaryrefslogtreecommitdiff
path: root/Source/WebCore/rendering/RenderFrameBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/rendering/RenderFrameBase.cpp')
-rw-r--r--Source/WebCore/rendering/RenderFrameBase.cpp5
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;