Index: third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h |
diff --git a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h |
index 994247cf78356cc3027d5714206829e7646281d1..d7bf35b147968e182156f7e527998e0dde70f065 100644 |
--- a/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h |
+++ b/third_party/WebKit/Source/core/editing/markers/DocumentMarkerController.h |
@@ -33,6 +33,7 @@ |
#include "core/dom/SynchronousMutationObserver.h" |
#include "core/editing/iterators/TextIterator.h" |
#include "core/editing/markers/DocumentMarker.h" |
+#include "core/editing/markers/SuggestionMarker.h" |
#include "core/editing/markers/TextMatchMarker.h" |
#include "platform/geometry/IntRect.h" |
#include "platform/heap/Handle.h" |
@@ -64,6 +65,15 @@ class CORE_EXPORT DocumentMarkerController final |
Color underlineColor, |
bool thick, |
Color backgroundColor); |
+ void addSuggestionMarker(const EphemeralRange&, |
+ Color underlineColor, |
+ bool thick, |
+ Color backgroundColor, |
+ const Vector<String>& suggestions); |
+ void addSuggestionHighlightMarker(const EphemeralRange&, |
+ Color underlineColor, |
+ bool thick, |
+ Color backgroundColor); |
void copyMarkers(Node* srcNode, |
unsigned startOffset, |
@@ -89,14 +99,16 @@ class CORE_EXPORT DocumentMarkerController final |
int length, |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers(), |
RemovePartiallyOverlappingMarkerOrNot = |
- DoNotRemovePartiallyOverlappingMarker); |
- |
+ DoNotRemovePartiallyOverlappingMarker); |
void removeMarkers( |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
void removeMarkers( |
Node*, |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
void removeSpellingMarkersForWords(const Vector<String>& words); |
+ void removeMarkersForWordsAffectedByEditing( |
+ DocumentMarker::MarkerTypes, |
+ bool doNotRemoveIfSelectionAtWordBoundary); |
void repaintMarkers( |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
// Returns true if markers within a range are found. |
@@ -114,6 +126,8 @@ class CORE_EXPORT DocumentMarkerController final |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
DocumentMarkerVector markersInRange(const EphemeralRange&, |
DocumentMarker::MarkerTypes); |
+ DocumentMarkerVector markersInRangeInclusive(const EphemeralRange&, |
+ DocumentMarker::MarkerTypes); |
DocumentMarkerVector markers(); |
Vector<IntRect> renderedRectsForTextMatchMarkers(); |
@@ -144,6 +158,10 @@ class CORE_EXPORT DocumentMarkerController final |
DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
MarkerMap& markerMapForType(DocumentMarker::MarkerType); |
const MarkerMap& markerMapForType(DocumentMarker::MarkerType) const; |
+ DocumentMarkerVector markersInRangeInternal( |
+ const EphemeralRange&, |
+ DocumentMarker::MarkerTypes, |
+ bool includeSpansTouchingEndpoints); |
void removeMarkers(TextIterator&, |
DocumentMarker::MarkerTypes, |
RemovePartiallyOverlappingMarkerOrNot); |
@@ -152,8 +170,11 @@ class CORE_EXPORT DocumentMarkerController final |
MarkerMap m_grammar; |
MarkerMap m_textMatches; |
MarkerMap m_compositions; |
+ MarkerMap m_suggestions; |
+ MarkerMap m_suggestionHighlights; |
const Member<const Document> m_document; |
+ SuggestionMarker::IDType m_nextSuggestionMarkerID; |
}; |
} // namespace blink |