Index: third_party/WebKit/Source/core/editing/markers/SpellCheckMarkerListImpl.h |
diff --git a/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.h b/third_party/WebKit/Source/core/editing/markers/SpellCheckMarkerListImpl.h |
similarity index 56% |
copy from third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.h |
copy to third_party/WebKit/Source/core/editing/markers/SpellCheckMarkerListImpl.h |
index bd148c554746c436bdbb5c4e0cfd33f491b23bba..819b5e792cca26bb478e60554f1030ab5c80e341 100644 |
--- a/third_party/WebKit/Source/core/editing/markers/GenericDocumentMarkerListImpl.h |
+++ b/third_party/WebKit/Source/core/editing/markers/SpellCheckMarkerListImpl.h |
@@ -2,21 +2,19 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef GenericDocumentMarkerListImpl_h |
-#define GenericDocumentMarkerListImpl_h |
+#ifndef SpellCheckMarkerListImpl_h |
+#define SpellCheckMarkerListImpl_h |
#include "core/editing/markers/DocumentMarkerList.h" |
namespace blink { |
-class RenderedDocumentMarker; |
- |
-// Temporary implementation of DocumentMarkerList that can handle |
-// DocumentMarkers of all MarkerTypes. This will be removed once we have |
-// specialized implementations for every MarkerType. |
-class GenericDocumentMarkerListImpl final : public DocumentMarkerList { |
+// Implementation of DocumentMarkerList for Spelling/Grammar markers. |
+// Markers with touching endpoints are merged on insert. Markers are kept sorted |
+// by start offset in order to be able to do this efficiently. |
+class CORE_EXPORT SpellCheckMarkerListImpl : public DocumentMarkerList { |
public: |
- GenericDocumentMarkerListImpl() = default; |
+ SpellCheckMarkerListImpl() = default; |
// DocumentMarkerList implementations |
bool IsEmpty() const final; |
@@ -28,20 +26,22 @@ class GenericDocumentMarkerListImpl final : public DocumentMarkerList { |
bool MoveMarkers(int length, DocumentMarkerList* dst_list) final; |
bool RemoveMarkers(unsigned start_offset, int length) final; |
- bool RemoveMarkersUnderWords(const String& node_text, |
- const Vector<String>& words) final; |
bool ShiftMarkers(unsigned offset, |
unsigned old_length, |
unsigned new_length) final; |
+ DECLARE_VIRTUAL_TRACE(); |
yosin_UTC9
2017/05/08 04:50:54
nit: Could you add a blank line before |DECLARE_VI
|
- DECLARE_TRACE(); |
+ // SpellCheckMarkerListImpl-specific |
+ // Returns true if a marker was removed, false otherwise. |
+ bool RemoveMarkersUnderWords(const String& node_text, |
+ const Vector<String>& words); |
private: |
HeapVector<Member<RenderedDocumentMarker>> markers_; |
- DISALLOW_COPY_AND_ASSIGN(GenericDocumentMarkerListImpl); |
+ DISALLOW_COPY_AND_ASSIGN(SpellCheckMarkerListImpl); |
}; |
} // namespace blink |
-#endif // GenericDocumentMarkerListImpl_h |
+#endif // SpellCheckMarkerListImpl_h |