Index: Source/core/paint/InlineTextBoxPainter.cpp |
diff --git a/Source/core/paint/InlineTextBoxPainter.cpp b/Source/core/paint/InlineTextBoxPainter.cpp |
index 994f4e8475323386ee3b30d51b4cb309831cbb08..c32e394ed41d99f3ad4410fa7f59da9402f47ba9 100644 |
--- a/Source/core/paint/InlineTextBoxPainter.cpp |
+++ b/Source/core/paint/InlineTextBoxPainter.cpp |
@@ -43,7 +43,7 @@ static TextBlobPtr* addToTextBlobCache(InlineTextBox& inlineTextBox) |
void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& paintOffset) |
{ |
- if (m_inlineTextBox.isLineBreak() || !paintInfo.shouldPaintWithinRoot(&m_inlineTextBox.renderer()) || m_inlineTextBox.renderer().style()->visibility() != VISIBLE |
+ if (m_inlineTextBox.isLineBreak() || !paintInfo.shouldPaintWithinRoot(&m_inlineTextBox.layoutObject()) || m_inlineTextBox.layoutObject().style()->visibility() != VISIBLE |
|| m_inlineTextBox.truncation() == cFullTruncation || paintInfo.phase == PaintPhaseOutline || !m_inlineTextBox.len()) |
return; |
@@ -62,7 +62,7 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
if (logicalStart >= paintEnd || logicalStart + logicalExtent <= paintStart) |
return; |
- bool isPrinting = m_inlineTextBox.renderer().document().printing(); |
+ bool isPrinting = m_inlineTextBox.layoutObject().document().printing(); |
// Determine whether or not we're selected. |
bool haveSelection = !isPrinting && paintInfo.phase != PaintPhaseTextClip && m_inlineTextBox.selectionState() != LayoutObject::SelectionNone; |
@@ -83,7 +83,7 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
} |
if (m_inlineTextBox.truncation() != cNoTruncation) { |
- if (m_inlineTextBox.renderer().containingBlock()->style()->isLeftToRightDirection() != m_inlineTextBox.isLeftToRightDirection()) { |
+ if (m_inlineTextBox.layoutObject().containingBlock()->style()->isLeftToRightDirection() != m_inlineTextBox.isLeftToRightDirection()) { |
// Make the visible fragment of text hug the edge closest to the rest of the run by moving the origin |
// at which we start drawing text. |
// e.g. In the case of LTR text truncated in an RTL Context, the correct behavior is: |
@@ -92,7 +92,7 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
// farther to the right. |
// NOTE: WebKit's behavior differs from that of IE which appears to just overlay the ellipsis on top of the |
// truncated string i.e. |Hello|CBA| -> |...lo|CBA| |
- LayoutUnit widthOfVisibleText = m_inlineTextBox.renderer().width(m_inlineTextBox.start(), m_inlineTextBox.truncation(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
+ LayoutUnit widthOfVisibleText = m_inlineTextBox.layoutObject().width(m_inlineTextBox.start(), m_inlineTextBox.truncation(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
LayoutUnit widthOfHiddenText = m_inlineTextBox.logicalWidth() - widthOfVisibleText; |
// FIXME: The hit testing logic also needs to take this translation into account. |
LayoutSize truncationOffset(m_inlineTextBox.isLeftToRightDirection() ? widthOfHiddenText : -widthOfHiddenText, 0); |
@@ -101,7 +101,7 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
} |
GraphicsContext* context = paintInfo.context; |
- const LayoutStyle& styleToUse = m_inlineTextBox.renderer().styleRef(m_inlineTextBox.isFirstLineStyle()); |
+ const LayoutStyle& styleToUse = m_inlineTextBox.layoutObject().styleRef(m_inlineTextBox.isFirstLineStyle()); |
FloatPoint boxOrigin = m_inlineTextBox.locationIncludingFlipping().toFloatPoint(); |
boxOrigin.move(adjustedPaintOffset.x().toFloat(), adjustedPaintOffset.y().toFloat()); |
@@ -110,8 +110,8 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
bool shouldRotate = false; |
LayoutTextCombine* combinedText = nullptr; |
if (!m_inlineTextBox.isHorizontal()) { |
- if (styleToUse.hasTextCombine() && m_inlineTextBox.renderer().isCombineText()) { |
- combinedText = &toLayoutTextCombine(m_inlineTextBox.renderer()); |
+ if (styleToUse.hasTextCombine() && m_inlineTextBox.layoutObject().isCombineText()) { |
+ combinedText = &toLayoutTextCombine(m_inlineTextBox.layoutObject()); |
if (!combinedText->isCombined()) |
combinedText = nullptr; |
} |
@@ -125,12 +125,12 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
} |
// Determine whether or not we have composition underlines to draw. |
- bool containsComposition = m_inlineTextBox.renderer().node() && m_inlineTextBox.renderer().frame()->inputMethodController().compositionNode() == m_inlineTextBox.renderer().node(); |
- bool useCustomUnderlines = containsComposition && m_inlineTextBox.renderer().frame()->inputMethodController().compositionUsesCustomUnderlines(); |
+ bool containsComposition = m_inlineTextBox.layoutObject().node() && m_inlineTextBox.layoutObject().frame()->inputMethodController().compositionNode() == m_inlineTextBox.layoutObject().node(); |
+ bool useCustomUnderlines = containsComposition && m_inlineTextBox.layoutObject().frame()->inputMethodController().compositionUsesCustomUnderlines(); |
// Determine text colors. |
- TextPainter::Style textStyle = TextPainter::textPaintingStyle(m_inlineTextBox.renderer(), styleToUse, paintInfo.forceBlackText(), isPrinting); |
- TextPainter::Style selectionStyle = TextPainter::selectionPaintingStyle(m_inlineTextBox.renderer(), haveSelection, paintInfo.forceBlackText(), isPrinting, textStyle); |
+ TextPainter::Style textStyle = TextPainter::textPaintingStyle(m_inlineTextBox.layoutObject(), styleToUse, paintInfo.forceBlackText(), isPrinting); |
+ TextPainter::Style selectionStyle = TextPainter::selectionPaintingStyle(m_inlineTextBox.layoutObject(), haveSelection, paintInfo.forceBlackText(), isPrinting, textStyle); |
bool paintSelectedTextOnly = (paintInfo.phase == PaintPhaseSelection); |
bool paintSelectedTextSeparately = !paintSelectedTextOnly && textStyle != selectionStyle; |
@@ -158,11 +158,11 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
// 2. Now paint the foreground, including text and decorations like underline/overline (in quirks mode only). |
int length = m_inlineTextBox.len(); |
- StringView string = m_inlineTextBox.renderer().text().createView(); |
+ StringView string = m_inlineTextBox.layoutObject().text().createView(); |
ASSERT(m_inlineTextBox.start() + length <= string.length()); |
if (static_cast<unsigned>(length) != string.length() || m_inlineTextBox.start()) |
string.narrow(m_inlineTextBox.start(), length); |
- int maximumLength = m_inlineTextBox.renderer().textLength() - m_inlineTextBox.start(); |
+ int maximumLength = m_inlineTextBox.layoutObject().textLength() - m_inlineTextBox.start(); |
StringBuilder charactersWithHyphen; |
TextRun textRun = m_inlineTextBox.constructTextRun(styleToUse, font, string, maximumLength, m_inlineTextBox.hasHyphen() ? &charactersWithHyphen : 0); |
@@ -237,7 +237,7 @@ void InlineTextBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& |
// Paint custom underlines for compositions. |
if (useCustomUnderlines) { |
- const Vector<CompositionUnderline>& underlines = m_inlineTextBox.renderer().frame()->inputMethodController().customCompositionUnderlines(); |
+ const Vector<CompositionUnderline>& underlines = m_inlineTextBox.layoutObject().frame()->inputMethodController().customCompositionUnderlines(); |
CompositionUnderlineRangeFilter filter(underlines, m_inlineTextBox.start(), m_inlineTextBox.end()); |
for (CompositionUnderlineRangeFilter::ConstIterator it = filter.begin(); it != filter.end(); ++it) { |
if (it->color == Color::transparent) |
@@ -268,7 +268,7 @@ void InlineTextBoxPainter::paintCompositionBackgrounds(GraphicsContext* pt, cons |
{ |
if (useCustomUnderlines) { |
// Paint custom background highlights for compositions. |
- const Vector<CompositionUnderline>& underlines = m_inlineTextBox.renderer().frame()->inputMethodController().customCompositionUnderlines(); |
+ const Vector<CompositionUnderline>& underlines = m_inlineTextBox.layoutObject().frame()->inputMethodController().customCompositionUnderlines(); |
CompositionUnderlineRangeFilter filter(underlines, m_inlineTextBox.start(), m_inlineTextBox.end()); |
for (CompositionUnderlineRangeFilter::ConstIterator it = filter.begin(); it != filter.end(); ++it) { |
if (it->backgroundColor == Color::transparent) |
@@ -278,8 +278,8 @@ void InlineTextBoxPainter::paintCompositionBackgrounds(GraphicsContext* pt, cons |
} else { |
paintSingleCompositionBackgroundRun(pt, boxOrigin, style, font, LayoutTheme::theme().platformDefaultCompositionBackgroundColor(), |
- m_inlineTextBox.renderer().frame()->inputMethodController().compositionStart(), |
- m_inlineTextBox.renderer().frame()->inputMethodController().compositionEnd()); |
+ m_inlineTextBox.layoutObject().frame()->inputMethodController().compositionStart(), |
+ m_inlineTextBox.layoutObject().frame()->inputMethodController().compositionEnd()); |
} |
} |
@@ -290,7 +290,7 @@ void InlineTextBoxPainter::paintSingleCompositionBackgroundRun(GraphicsContext* |
if (sPos >= ePos) |
return; |
- int deltaY = m_inlineTextBox.renderer().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
+ int deltaY = m_inlineTextBox.layoutObject().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
int selHeight = m_inlineTextBox.root().selectionHeight(); |
FloatPoint localOrigin(boxOrigin.x(), boxOrigin.y() - deltaY); |
context->drawHighlightForText(font, m_inlineTextBox.constructTextRun(style, font), localOrigin, selHeight, backgroundColor, sPos, ePos); |
@@ -298,10 +298,10 @@ void InlineTextBoxPainter::paintSingleCompositionBackgroundRun(GraphicsContext* |
void InlineTextBoxPainter::paintDocumentMarkers(GraphicsContext* pt, const FloatPoint& boxOrigin, const LayoutStyle& style, const Font& font, bool background) |
{ |
- if (!m_inlineTextBox.renderer().node()) |
+ if (!m_inlineTextBox.layoutObject().node()) |
return; |
- DocumentMarkerVector markers = m_inlineTextBox.renderer().document().markers().markersFor(m_inlineTextBox.renderer().node()); |
+ DocumentMarkerVector markers = m_inlineTextBox.layoutObject().document().markers().markersFor(m_inlineTextBox.layoutObject().node()); |
DocumentMarkerVector::const_iterator markerIt = markers.begin(); |
// Give any document markers that touch this run a chance to draw before the text has been drawn. |
@@ -367,7 +367,7 @@ static GraphicsContext::DocumentMarkerLineStyle lineStyleForMarkerType(DocumentM |
void InlineTextBoxPainter::paintDocumentMarker(GraphicsContext* pt, const FloatPoint& boxOrigin, DocumentMarker* marker, const LayoutStyle& style, const Font& font, bool grammar) |
{ |
// Never print spelling/grammar markers (5327887) |
- if (m_inlineTextBox.renderer().document().printing()) |
+ if (m_inlineTextBox.layoutObject().document().printing()) |
return; |
if (m_inlineTextBox.truncation() == cFullTruncation) |
@@ -393,7 +393,7 @@ void InlineTextBoxPainter::paintDocumentMarker(GraphicsContext* pt, const FloatP |
endPosition = std::min<int>(endPosition, m_inlineTextBox.truncation()); |
// Calculate start & width |
- int deltaY = m_inlineTextBox.renderer().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
+ int deltaY = m_inlineTextBox.layoutObject().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
int selHeight = m_inlineTextBox.root().selectionHeight(); |
FloatPoint startPoint(boxOrigin.x(), boxOrigin.y() - deltaY); |
TextRun run = m_inlineTextBox.constructTextRun(style, font); |
@@ -407,7 +407,7 @@ void InlineTextBoxPainter::paintDocumentMarker(GraphicsContext* pt, const FloatP |
// display a toolTip. We don't do this for misspelling markers. |
if (grammar) { |
markerRect.move(-boxOrigin.x(), -boxOrigin.y()); |
- markerRect = m_inlineTextBox.renderer().localToAbsoluteQuad(FloatRect(markerRect)).enclosingBoundingBox(); |
+ markerRect = m_inlineTextBox.layoutObject().localToAbsoluteQuad(FloatRect(markerRect)).enclosingBoundingBox(); |
toRenderedDocumentMarker(marker)->setRenderedRect(LayoutRect(markerRect)); |
} |
} |
@@ -419,7 +419,7 @@ void InlineTextBoxPainter::paintDocumentMarker(GraphicsContext* pt, const FloatP |
// So, we generally place the underline at the bottom of the text, but in larger fonts that's not so good so |
// we pin to two pixels under the baseline. |
int lineThickness = misspellingLineThickness; |
- int baseline = m_inlineTextBox.renderer().style(m_inlineTextBox.isFirstLineStyle())->fontMetrics().ascent(); |
+ int baseline = m_inlineTextBox.layoutObject().style(m_inlineTextBox.isFirstLineStyle())->fontMetrics().ascent(); |
int descent = m_inlineTextBox.logicalHeight() - baseline; |
int underlineOffset; |
if (descent <= (2 + lineThickness)) { |
@@ -441,7 +441,7 @@ void InlineTextBoxPainter::paintSelection(GraphicsContext* context, const FloatR |
if (sPos >= ePos) |
return; |
- Color c = m_inlineTextBox.renderer().selectionBackgroundColor(); |
+ Color c = m_inlineTextBox.layoutObject().selectionBackgroundColor(); |
if (!c.alpha()) |
return; |
@@ -453,14 +453,14 @@ void InlineTextBoxPainter::paintSelection(GraphicsContext* context, const FloatR |
// If the text is truncated, let the thing being painted in the truncation |
// draw its own highlight. |
int length = m_inlineTextBox.truncation() != cNoTruncation ? m_inlineTextBox.truncation() : m_inlineTextBox.len(); |
- StringView string = m_inlineTextBox.renderer().text().createView(); |
+ StringView string = m_inlineTextBox.layoutObject().text().createView(); |
if (string.length() != static_cast<unsigned>(length) || m_inlineTextBox.start()) |
string.narrow(m_inlineTextBox.start(), length); |
StringBuilder charactersWithHyphen; |
bool respectHyphen = ePos == length && m_inlineTextBox.hasHyphen(); |
- TextRun textRun = m_inlineTextBox.constructTextRun(style, font, string, m_inlineTextBox.renderer().textLength() - m_inlineTextBox.start(), respectHyphen ? &charactersWithHyphen : 0); |
+ TextRun textRun = m_inlineTextBox.constructTextRun(style, font, string, m_inlineTextBox.layoutObject().textLength() - m_inlineTextBox.start(), respectHyphen ? &charactersWithHyphen : 0); |
if (respectHyphen) |
ePos = textRun.length(); |
@@ -480,7 +480,7 @@ void InlineTextBoxPainter::paintSelection(GraphicsContext* context, const FloatR |
LayoutUnit selectionBottom = m_inlineTextBox.root().selectionBottom(); |
LayoutUnit selectionTop = m_inlineTextBox.root().selectionTopAdjustedForPrecedingBlock(); |
- int deltaY = roundToInt(m_inlineTextBox.renderer().style()->isFlippedLinesWritingMode() ? selectionBottom - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - selectionTop); |
+ int deltaY = roundToInt(m_inlineTextBox.layoutObject().style()->isFlippedLinesWritingMode() ? selectionBottom - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - selectionTop); |
int selHeight = std::max(0, roundToInt(selectionBottom - selectionTop)); |
FloatPoint localOrigin(boxRect.x(), boxRect.y() - deltaY); |
@@ -713,21 +713,21 @@ void InlineTextBoxPainter::paintDecoration(GraphicsContext* context, const Float |
float width = m_inlineTextBox.logicalWidth(); |
if (m_inlineTextBox.truncation() != cNoTruncation) { |
- width = m_inlineTextBox.renderer().width(m_inlineTextBox.start(), m_inlineTextBox.truncation(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
+ width = m_inlineTextBox.layoutObject().width(m_inlineTextBox.start(), m_inlineTextBox.truncation(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
if (!m_inlineTextBox.isLeftToRightDirection()) |
localOrigin.move(m_inlineTextBox.logicalWidth() - width, 0); |
} |
// Get the text decoration colors. |
LayoutObject::AppliedTextDecoration underline, overline, linethrough; |
- m_inlineTextBox.renderer().getTextDecorations(deco, underline, overline, linethrough, true); |
+ m_inlineTextBox.layoutObject().getTextDecorations(deco, underline, overline, linethrough, true); |
if (m_inlineTextBox.isFirstLineStyle()) |
- m_inlineTextBox.renderer().getTextDecorations(deco, underline, overline, linethrough, true, true); |
+ m_inlineTextBox.layoutObject().getTextDecorations(deco, underline, overline, linethrough, true, true); |
// Use a special function for underlines to get the positioning exactly right. |
- bool isPrinting = m_inlineTextBox.renderer().document().printing(); |
+ bool isPrinting = m_inlineTextBox.layoutObject().document().printing(); |
- const LayoutStyle& styleToUse = m_inlineTextBox.renderer().styleRef(m_inlineTextBox.isFirstLineStyle()); |
+ const LayoutStyle& styleToUse = m_inlineTextBox.layoutObject().styleRef(m_inlineTextBox.isFirstLineStyle()); |
int baseline = styleToUse.fontMetrics().ascent(); |
// Set the thick of the line to be 10% (or something else ?)of the computed font size and not less than 1px. |
@@ -770,16 +770,16 @@ void InlineTextBoxPainter::paintCompositionUnderline(GraphicsContext* ctx, const |
// start of line to draw, relative to paintOffset. |
float start = paintStart == static_cast<unsigned>(m_inlineTextBox.start()) ? 0 : |
- m_inlineTextBox.renderer().width(m_inlineTextBox.start(), paintStart - m_inlineTextBox.start(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
+ m_inlineTextBox.layoutObject().width(m_inlineTextBox.start(), paintStart - m_inlineTextBox.start(), m_inlineTextBox.textPos(), m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
// how much line to draw |
float width = (paintStart == static_cast<unsigned>(m_inlineTextBox.start()) && paintEnd == static_cast<unsigned>(m_inlineTextBox.end()) + 1) ? m_inlineTextBox.logicalWidth().toFloat() : |
- m_inlineTextBox.renderer().width(paintStart, paintEnd - paintStart, m_inlineTextBox.textPos() + start, m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
+ m_inlineTextBox.layoutObject().width(paintStart, paintEnd - paintStart, m_inlineTextBox.textPos() + start, m_inlineTextBox.isLeftToRightDirection() ? LTR : RTL, m_inlineTextBox.isFirstLineStyle()); |
// Thick marked text underlines are 2px thick as long as there is room for the 2px line under the baseline. |
// All other marked text underlines are 1px thick. |
// If there's not enough space the underline will touch or overlap characters. |
int lineThickness = 1; |
- int baseline = m_inlineTextBox.renderer().style(m_inlineTextBox.isFirstLineStyle())->fontMetrics().ascent(); |
+ int baseline = m_inlineTextBox.layoutObject().style(m_inlineTextBox.isFirstLineStyle())->fontMetrics().ascent(); |
if (underline.thick && m_inlineTextBox.logicalHeight() - baseline >= 2) |
lineThickness = 2; |
@@ -790,14 +790,14 @@ void InlineTextBoxPainter::paintCompositionUnderline(GraphicsContext* ctx, const |
ctx->setStrokeColor(underline.color); |
ctx->setStrokeThickness(lineThickness); |
- ctx->drawLineForText(FloatPoint(boxOrigin.x() + start, boxOrigin.y() + m_inlineTextBox.logicalHeight() - lineThickness), width, m_inlineTextBox.renderer().document().printing()); |
+ ctx->drawLineForText(FloatPoint(boxOrigin.x() + start, boxOrigin.y() + m_inlineTextBox.logicalHeight() - lineThickness), width, m_inlineTextBox.layoutObject().document().printing()); |
} |
void InlineTextBoxPainter::paintTextMatchMarker(GraphicsContext* pt, const FloatPoint& boxOrigin, DocumentMarker* marker, const LayoutStyle& style, const Font& font) |
{ |
// Use same y positioning and height as for selection, so that when the selection and this highlight are on |
// the same word there are no pieces sticking out. |
- int deltaY = m_inlineTextBox.renderer().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
+ int deltaY = m_inlineTextBox.layoutObject().style()->isFlippedLinesWritingMode() ? m_inlineTextBox.root().selectionBottom() - m_inlineTextBox.logicalBottom() : m_inlineTextBox.logicalTop() - m_inlineTextBox.root().selectionTop(); |
int selHeight = m_inlineTextBox.root().selectionHeight(); |
int sPos = std::max(marker->startOffset() - m_inlineTextBox.start(), (unsigned)0); |
@@ -806,11 +806,11 @@ void InlineTextBoxPainter::paintTextMatchMarker(GraphicsContext* pt, const Float |
// Always compute and store the rect associated with this marker. The computed rect is in absolute coordinates. |
IntRect markerRect = enclosingIntRect(font.selectionRectForText(run, IntPoint(m_inlineTextBox.x(), m_inlineTextBox.root().selectionTop()), selHeight, sPos, ePos)); |
- markerRect = m_inlineTextBox.renderer().localToAbsoluteQuad(FloatRect(markerRect)).enclosingBoundingBox(); |
+ markerRect = m_inlineTextBox.layoutObject().localToAbsoluteQuad(FloatRect(markerRect)).enclosingBoundingBox(); |
toRenderedDocumentMarker(marker)->setRenderedRect(LayoutRect(markerRect)); |
// Optionally highlight the text |
- if (m_inlineTextBox.renderer().frame()->editor().markedTextMatchesAreHighlighted()) { |
+ if (m_inlineTextBox.layoutObject().frame()->editor().markedTextMatchesAreHighlighted()) { |
Color color = marker->activeMatch() ? |
LayoutTheme::theme().platformActiveTextSearchHighlightColor() : |
LayoutTheme::theme().platformInactiveTextSearchHighlightColor(); |