OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights |
7 * reserved. | 7 * reserved. |
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. | 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. |
9 * (http://www.torchmobile.com/) | 9 * (http://www.torchmobile.com/) |
10 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
(...skipping 24 matching lines...) Expand all Loading... |
35 #include "core/editing/markers/DocumentMarker.h" | 35 #include "core/editing/markers/DocumentMarker.h" |
36 #include "platform/geometry/IntRect.h" | 36 #include "platform/geometry/IntRect.h" |
37 #include "platform/heap/Handle.h" | 37 #include "platform/heap/Handle.h" |
38 #include "platform/wtf/HashMap.h" | 38 #include "platform/wtf/HashMap.h" |
39 #include "platform/wtf/Vector.h" | 39 #include "platform/wtf/Vector.h" |
40 | 40 |
41 namespace blink { | 41 namespace blink { |
42 | 42 |
43 class DocumentMarkerList; | 43 class DocumentMarkerList; |
44 class Node; | 44 class Node; |
45 class RenderedDocumentMarker; | |
46 | 45 |
47 class CORE_EXPORT DocumentMarkerController final | 46 class CORE_EXPORT DocumentMarkerController final |
48 : public GarbageCollected<DocumentMarkerController>, | 47 : public GarbageCollected<DocumentMarkerController>, |
49 public SynchronousMutationObserver { | 48 public SynchronousMutationObserver { |
50 WTF_MAKE_NONCOPYABLE(DocumentMarkerController); | 49 WTF_MAKE_NONCOPYABLE(DocumentMarkerController); |
51 USING_GARBAGE_COLLECTED_MIXIN(DocumentMarkerController); | 50 USING_GARBAGE_COLLECTED_MIXIN(DocumentMarkerController); |
52 | 51 |
53 public: | 52 public: |
54 explicit DocumentMarkerController(Document&); | 53 explicit DocumentMarkerController(Document&); |
55 | 54 |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 | 87 |
89 // Returns a marker of one of the specified types that includes the specified | 88 // Returns a marker of one of the specified types that includes the specified |
90 // Position in its interior (not at an endpoint), if one exists. | 89 // Position in its interior (not at an endpoint), if one exists. |
91 DocumentMarker* MarkerAtPosition(const Position&, | 90 DocumentMarker* MarkerAtPosition(const Position&, |
92 DocumentMarker::MarkerTypes); | 91 DocumentMarker::MarkerTypes); |
93 DocumentMarkerVector MarkersFor( | 92 DocumentMarkerVector MarkersFor( |
94 Node*, | 93 Node*, |
95 DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); | 94 DocumentMarker::MarkerTypes = DocumentMarker::AllMarkers()); |
96 DocumentMarkerVector Markers(); | 95 DocumentMarkerVector Markers(); |
97 Vector<IntRect> RenderedRectsForTextMatchMarkers(); | 96 Vector<IntRect> RenderedRectsForTextMatchMarkers(); |
98 void UpdateMarkerRenderedRectIfNeeded(const Node&, RenderedDocumentMarker&); | |
99 void InvalidateRectsForAllTextMatchMarkers(); | 97 void InvalidateRectsForAllTextMatchMarkers(); |
100 void InvalidateRectsForTextMatchMarkersInNode(const Node&); | 98 void InvalidateRectsForTextMatchMarkersInNode(const Node&); |
101 | 99 |
102 DECLARE_TRACE(); | 100 DECLARE_TRACE(); |
103 | 101 |
104 #ifndef NDEBUG | 102 #ifndef NDEBUG |
105 void ShowMarkers() const; | 103 void ShowMarkers() const; |
106 #endif | 104 #endif |
107 | 105 |
108 // SynchronousMutationObserver | 106 // SynchronousMutationObserver |
(...skipping 25 matching lines...) Expand all Loading... |
134 const Member<const Document> document_; | 132 const Member<const Document> document_; |
135 }; | 133 }; |
136 | 134 |
137 } // namespace blink | 135 } // namespace blink |
138 | 136 |
139 #ifndef NDEBUG | 137 #ifndef NDEBUG |
140 void showDocumentMarkers(const blink::DocumentMarkerController*); | 138 void showDocumentMarkers(const blink::DocumentMarkerController*); |
141 #endif | 139 #endif |
142 | 140 |
143 #endif // DocumentMarkerController_h | 141 #endif // DocumentMarkerController_h |
OLD | NEW |