Index: third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
diff --git a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
index b46e742c2e33dbb443ce2d3856c22bb16242dc8d..c8f792bf228599c22e6666b34221ab0d02e4ceee 100644 |
--- a/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
+++ b/third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp |
@@ -6,7 +6,9 @@ |
#include "core/editing/CompositionUnderline.h" |
#include "core/editing/Editor.h" |
+#include "core/editing/markers/CompositionMarker.h" |
#include "core/editing/markers/DocumentMarkerController.h" |
+#include "core/editing/markers/TextMatchMarker.h" |
#include "core/frame/LocalFrame.h" |
#include "core/layout/LayoutTextCombine.h" |
#include "core/layout/LayoutTheme.h" |
@@ -856,17 +858,21 @@ void InlineTextBoxPainter::paintDocumentMarkers( |
marker, style, font, true); |
break; |
case DocumentMarker::TextMatch: |
- if (markerPaintPhase == DocumentMarkerPaintPhase::Background) |
- m_inlineTextBox.paintTextMatchMarkerBackground(paintInfo, boxOrigin, |
- marker, style, font); |
- else |
- m_inlineTextBox.paintTextMatchMarkerForeground(paintInfo, boxOrigin, |
- marker, style, font); |
+ if (markerPaintPhase == DocumentMarkerPaintPhase::Background) { |
+ m_inlineTextBox.paintTextMatchMarkerBackground( |
+ paintInfo, boxOrigin, toTextMatchMarker(marker), style, font); |
+ } else { |
+ m_inlineTextBox.paintTextMatchMarkerForeground( |
+ paintInfo, boxOrigin, toTextMatchMarker(marker), style, font); |
+ } |
break; |
case DocumentMarker::Composition: { |
- CompositionUnderline underline(marker.startOffset(), marker.endOffset(), |
- marker.underlineColor(), marker.thick(), |
- marker.backgroundColor()); |
+ const CompositionMarker& compositionMarker = |
+ toCompositionMarker(marker); |
+ CompositionUnderline underline( |
+ compositionMarker.startOffset(), compositionMarker.endOffset(), |
+ compositionMarker.underlineColor(), compositionMarker.thick(), |
+ compositionMarker.backgroundColor()); |
if (markerPaintPhase == DocumentMarkerPaintPhase::Background) |
paintSingleCompositionBackgroundRun( |
paintInfo.context, boxOrigin, style, font, |
@@ -1303,7 +1309,7 @@ void InlineTextBoxPainter::paintCompositionUnderline( |
void InlineTextBoxPainter::paintTextMatchMarkerForeground( |
const PaintInfo& paintInfo, |
const LayoutPoint& boxOrigin, |
- const DocumentMarker& marker, |
+ const TextMatchMarker& marker, |
const ComputedStyle& style, |
const Font& font) { |
if (!inlineLayoutObject().frame()->editor().markedTextMatchesAreHighlighted()) |
@@ -1342,7 +1348,7 @@ void InlineTextBoxPainter::paintTextMatchMarkerForeground( |
void InlineTextBoxPainter::paintTextMatchMarkerBackground( |
const PaintInfo& paintInfo, |
const LayoutPoint& boxOrigin, |
- const DocumentMarker& marker, |
+ const TextMatchMarker& marker, |
const ComputedStyle& style, |
const Font& font) { |
if (!LineLayoutAPIShim::layoutObjectFrom(m_inlineTextBox.getLineLayoutItem()) |