| Index: Source/core/rendering/InlineFlowBox.cpp
|
| diff --git a/Source/core/rendering/InlineFlowBox.cpp b/Source/core/rendering/InlineFlowBox.cpp
|
| index f4f36b70c970b2aba636d880191c06a67edce16c..30cdb8bc30ed510de5d06947477511c23475070c 100644
|
| --- a/Source/core/rendering/InlineFlowBox.cpp
|
| +++ b/Source/core/rendering/InlineFlowBox.cpp
|
| @@ -1029,17 +1029,14 @@ bool InlineFlowBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& re
|
| return false;
|
|
|
| // Check children first.
|
| - // We need to account for culled inline parents of the hit-tested nodes, so that they may also get included in area-based hit-tests.
|
| + // We need to account for culled inline parents of the hit-tested nodes, so that they may also get included in not only area-based hit-tests but also point-based ones.
|
| RenderObject* culledParent = 0;
|
| for (InlineBox* curr = lastChild(); curr; curr = curr->prevOnLine()) {
|
| if (curr->renderer().isText() || !curr->boxModelObject()->hasSelfPaintingLayer()) {
|
| RenderObject* newParent = 0;
|
| - // Culled parents are only relevant for area-based hit-tests, so ignore it in point-based ones.
|
| - if (locationInContainer.isRectBasedTest()) {
|
| - newParent = curr->renderer().parent();
|
| - if (newParent == renderer())
|
| - newParent = 0;
|
| - }
|
| + newParent = curr->renderer().parent();
|
| + if (newParent == renderer())
|
| + newParent = 0;
|
| // Check the culled parent after all its children have been checked, to do this we wait until
|
| // we are about to test an element with a different parent.
|
| if (newParent != culledParent) {
|
|
|