Index: third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp |
diff --git a/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp b/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp |
index 4fcfc4352005296715300c7d454ab38678ced259..fb2c6b4dde11b23696458d858508fcebee0a205a 100644 |
--- a/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp |
+++ b/third_party/WebKit/Source/core/layout/line/InlineTextBox.cpp |
@@ -383,17 +383,15 @@ bool InlineTextBox::isLineBreak() const |
bool InlineTextBox::nodeAtPoint(HitTestResult& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit /* lineTop */, LayoutUnit /*lineBottom*/) |
{ |
- if (isLineBreak()) |
+ if (isLineBreak() || m_truncation == cFullTruncation) |
return false; |
LayoutPoint boxOrigin = locationIncludingFlipping(); |
boxOrigin.moveBy(accumulatedOffset); |
LayoutRect rect(boxOrigin, size()); |
- // FIXME: both calls to rawValue() below is temporary and should be removed once the transition |
- // to LayoutUnit-based types is complete (crbug.com/321237) |
- if (m_truncation != cFullTruncation && visibleToHitTestRequest(result.hitTestRequest()) && locationInContainer.intersects(rect)) { |
+ if (visibleToHitTestRequest(result.hitTestRequest()) && locationInContainer.intersects(rect)) { |
lineLayoutItem().updateHitTestResult(result, flipForWritingMode(locationInContainer.point() - toLayoutSize(accumulatedOffset))); |
- if (!result.addNodeToListBasedTestResult(lineLayoutItem().node(), locationInContainer, rect)) |
+ if (result.addNodeToListBasedTestResult(lineLayoutItem().node(), locationInContainer, rect) == StopHitTesting) |
return true; |
} |
return false; |