| Index: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| index 97baaabca2d756ceb2d1776496e7c67f0d518d3c..b2dbff7fbf3e3a9466e0dac0c39d13d655cfdb51 100644
|
| --- a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
|
| @@ -2848,6 +2848,24 @@ LayoutUnit LayoutBlockFlow::nextFloatLogicalBottomBelowForBlock(LayoutUnit logic
|
| return m_floatingObjects->findNextFloatLogicalBottomBelowForBlock(logicalHeight);
|
| }
|
|
|
| +bool LayoutBlockFlow::hitTestChildren(HitTestResult& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAction hitTestAction)
|
| +{
|
| + LayoutPoint scrolledOffset(hasOverflowClip() ? accumulatedOffset - scrolledContentOffset() : accumulatedOffset);
|
| + if (childrenInline()) {
|
| + if (m_lineBoxes.hitTest(LineLayoutBoxModel(this), result, locationInContainer, scrolledOffset, hitTestAction)) {
|
| + updateHitTestResult(result, flipForWritingMode(toLayoutPoint(locationInContainer.point() - accumulatedOffset)));
|
| + return true;
|
| + }
|
| + } else if (LayoutBlock::hitTestChildren(result, locationInContainer, accumulatedOffset, hitTestAction)) {
|
| + return true;
|
| + }
|
| +
|
| + if (hitTestAction == HitTestFloat && hitTestFloats(result, locationInContainer, scrolledOffset))
|
| + return true;
|
| +
|
| + return false;
|
| +}
|
| +
|
| bool LayoutBlockFlow::hitTestFloats(HitTestResult& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset)
|
| {
|
| if (!m_floatingObjects)
|
|
|