Index: third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.cpp |
diff --git a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.cpp b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.cpp |
index b8c725b931d3048e5278c25c418602aea25ce0d5..aab6aebd02efde231634dc324bff117ad697d85d 100644 |
--- a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.cpp |
+++ b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.cpp |
@@ -48,18 +48,6 @@ |
namespace blink { |
-MarkerRemoverPredicate::MarkerRemoverPredicate(const Vector<String>& words) |
- : m_words(words) {} |
- |
-bool MarkerRemoverPredicate::operator()(const DocumentMarker& documentMarker, |
- const Text& textNode) const { |
- unsigned start = documentMarker.startOffset(); |
- unsigned length = documentMarker.endOffset() - documentMarker.startOffset(); |
- |
- String markerText = textNode.data().substring(start, length); |
- return m_words.contains(markerText); |
-} |
- |
DocumentMarkerController::DocumentMarkerController(Document& document) |
: m_document(&document) { |
setContext(&document); |
@@ -291,10 +279,7 @@ DocumentMarkerVector DocumentMarkerController::markersInRange( |
return foundMarkers; |
} |
-// This method is only ever called with the type DocumentMarker::TextMatch |
-// TODO(rlanday): remove the param |
-Vector<IntRect> DocumentMarkerController::renderedRectsForMarkers( |
- DocumentMarker::MarkerType) { |
+Vector<IntRect> DocumentMarkerController::renderedRectsForTextMatchMarkers() { |
Vector<IntRect> result; |
for (auto nodeIterator = m_textMatches.begin(); |
nodeIterator != m_textMatches.end(); ++nodeIterator) { |
@@ -318,7 +303,8 @@ static void invalidatePaintForTickmarks(const Node& node) { |
frameView->invalidatePaintForTickmarks(); |
} |
-void DocumentMarkerController::invalidateRectsForMarkersInNode(Node& node) { |
+void DocumentMarkerController::invalidateRectsForTextMatchMarkersInNode( |
+ Node& node) { |
if (!m_textMatches.contains(&node)) |
return; |
@@ -327,9 +313,9 @@ void DocumentMarkerController::invalidateRectsForMarkersInNode(Node& node) { |
invalidatePaintForTickmarks(node); |
} |
-void DocumentMarkerController::invalidateRectsForAllMarkers() { |
+void DocumentMarkerController::invalidateRectsForAllTextMatchMarkers() { |
for (auto& nodeMarkers : m_textMatches) |
- invalidateRectsForMarkersInNode(*nodeMarkers.key); |
+ invalidateRectsForTextMatchMarkersInNode(*nodeMarkers.key); |
} |
DEFINE_TRACE(DocumentMarkerController) { |
@@ -358,15 +344,14 @@ void DocumentMarkerController::removeMarkers( |
} |
} |
-void DocumentMarkerController::removeMarkers( |
- const MarkerRemoverPredicate& shouldRemoveMarker) { |
+void DocumentMarkerController::removeSpellingMarkersForWords( |
+ const Vector<String>& words) { |
for (auto& nodeMarkers : m_spelling) { |
const Node& node = *nodeMarkers.key; |
if (!node.isTextNode()) |
continue; |
toSpellCheckMarkerList(nodeMarkers.value.get()) |
- ->removeMarkersForWords(static_cast<const Text&>(node).data(), |
- shouldRemoveMarker.m_words); |
+ ->removeMarkersForWords(static_cast<const Text&>(node).data(), words); |
} |
} |
@@ -391,8 +376,9 @@ void DocumentMarkerController::repaintMarkers( |
} |
} |
-bool DocumentMarkerController::setMarkersActive(const EphemeralRange& range, |
- bool active) { |
+bool DocumentMarkerController::setTextMatchMarkersActive( |
+ const EphemeralRange& range, |
+ bool active) { |
Node* const startContainer = range.startPosition().computeContainerNode(); |
DCHECK(startContainer); |
Node* const endContainer = range.endPosition().computeContainerNode(); |
@@ -407,7 +393,8 @@ bool DocumentMarkerController::setMarkersActive(const EphemeralRange& range, |
for (Node& node : range.nodes()) { |
int startOffset = node == startContainer ? containerStartOffset : 0; |
int endOffset = node == endContainer ? containerEndOffset : INT_MAX; |
- markerFound |= setMarkersActive(&node, startOffset, endOffset, active); |
+ markerFound |= |
+ setTextMatchMarkersActive(&node, startOffset, endOffset, active); |
} |
return markerFound; |
} |
@@ -422,10 +409,10 @@ bool DocumentMarkerController::hasMarkers(Node* node) const { |
return false; |
} |
-bool DocumentMarkerController::setMarkersActive(Node* node, |
- unsigned startOffset, |
- unsigned endOffset, |
- bool active) { |
+bool DocumentMarkerController::setTextMatchMarkersActive(Node* node, |
+ unsigned startOffset, |
+ unsigned endOffset, |
+ bool active) { |
bool docDirty = false; |
if (m_textMatches.contains(node)) { |
docDirty = toTextMatchMarkerList(m_textMatches.at(node)) |
@@ -588,7 +575,7 @@ void DocumentMarkerController::didUpdateCharacterData(CharacterData* node, |
} |
if (didShiftMarker) { |
- invalidateRectsForMarkersInNode(*node); |
+ invalidateRectsForTextMatchMarkersInNode(*node); |
// repaint the affected node |
if (node->layoutObject()) { |
node->layoutObject()->setShouldDoFullPaintInvalidation( |