Index: third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.cpp |
diff --git a/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.cpp b/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.cpp |
index 587e67e74f607f166383a26bd66370935c324c11..cbe0675c29da1af6c99e9fd3bfc533ab2d6327d4 100644 |
--- a/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.cpp |
+++ b/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.cpp |
@@ -14,7 +14,21 @@ bool GenericDocumentMarkerListImpl::IsEmpty() const { |
} |
void GenericDocumentMarkerListImpl::Add(DocumentMarker* marker) { |
- DocumentMarkerListEditor::AddMarker(&markers_, marker); |
+ switch (marker->GetType()) { |
+ case DocumentMarker::kSpelling: |
+ case DocumentMarker::kGrammar: |
+ DocumentMarkerListEditor::AddMarkerAndMergeOverlapping(&markers_, marker); |
+ return; |
+ case DocumentMarker::kTextMatch: |
+ DocumentMarkerListEditor::AddMarkerWithoutMergingOverlapping(&markers_, |
+ marker); |
+ return; |
+ case DocumentMarker::kComposition: |
+ NOTREACHED(); |
+ } |
+ |
+ NOTREACHED(); |
+ return; |
} |
void GenericDocumentMarkerListImpl::Clear() { |