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
reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights
reserved. |
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
8 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 8 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 toRenderedDocumentMarker(markers[markers.size() - 1])->setRenderedRe
ct(range->boundingBox()); | 140 toRenderedDocumentMarker(markers[markers.size() - 1])->setRenderedRe
ct(range->boundingBox()); |
141 } | 141 } |
142 } | 142 } |
143 } | 143 } |
144 | 144 |
145 void DocumentMarkerController::prepareForDestruction() | 145 void DocumentMarkerController::prepareForDestruction() |
146 { | 146 { |
147 clear(); | 147 clear(); |
148 } | 148 } |
149 | 149 |
150 void DocumentMarkerController::removeMarkers(Range* range, DocumentMarker::Marke
rTypes markerTypes, RemovePartiallyOverlappingMarkerOrNot shouldRemovePartiallyO
verlappingMarker) | 150 void DocumentMarkerController::removeMarkers(TextIterator& markedText, DocumentM
arker::MarkerTypes markerTypes, RemovePartiallyOverlappingMarkerOrNot shouldRemo
vePartiallyOverlappingMarker) |
151 { | 151 { |
152 for (TextIterator markedText(range); !markedText.atEnd(); markedText.advance
()) { | 152 for (; !markedText.atEnd(); markedText.advance()) { |
153 if (!possiblyHasMarkers(markerTypes)) | 153 if (!possiblyHasMarkers(markerTypes)) |
154 return; | 154 return; |
155 ASSERT(!m_markers.isEmpty()); | 155 ASSERT(!m_markers.isEmpty()); |
156 | 156 |
157 int startOffset = markedText.startOffset(); | 157 int startOffset = markedText.startOffset(); |
158 int endOffset = markedText.endOffset(); | 158 int endOffset = markedText.endOffset(); |
159 removeMarkers(markedText.startContainer(), startOffset, endOffset - star
tOffset, markerTypes, shouldRemovePartiallyOverlappingMarker); | 159 removeMarkers(markedText.startContainer(), startOffset, endOffset - star
tOffset, markerTypes, shouldRemovePartiallyOverlappingMarker); |
160 } | 160 } |
161 } | 161 } |
162 | 162 |
| 163 void DocumentMarkerController::removeMarkers(Range* range, DocumentMarker::Marke
rTypes markerTypes, RemovePartiallyOverlappingMarkerOrNot shouldRemovePartiallyO
verlappingMarker) |
| 164 { |
| 165 TextIterator markedText(range); |
| 166 DocumentMarkerController::removeMarkers(markedText, markerTypes, shouldRemov
ePartiallyOverlappingMarker); |
| 167 } |
| 168 |
| 169 void DocumentMarkerController::removeMarkers(const Position& start, const Positi
on& end, DocumentMarker::MarkerTypes markerTypes, RemovePartiallyOverlappingMark
erOrNot shouldRemovePartiallyOverlappingMarker) |
| 170 { |
| 171 TextIterator markedText(start, end); |
| 172 DocumentMarkerController::removeMarkers(markedText, markerTypes, shouldRemov
ePartiallyOverlappingMarker); |
| 173 } |
| 174 |
163 static bool startsFurther(const OwnPtrWillBeMember<RenderedDocumentMarker>& lhv,
const DocumentMarker* rhv) | 175 static bool startsFurther(const OwnPtrWillBeMember<RenderedDocumentMarker>& lhv,
const DocumentMarker* rhv) |
164 { | 176 { |
165 return lhv->startOffset() < rhv->startOffset(); | 177 return lhv->startOffset() < rhv->startOffset(); |
166 } | 178 } |
167 | 179 |
168 static bool startsAfter(const OwnPtrWillBeMember<RenderedDocumentMarker>& marker
, size_t startOffset) | 180 static bool startsAfter(const OwnPtrWillBeMember<RenderedDocumentMarker>& marker
, size_t startOffset) |
169 { | 181 { |
170 return marker->startOffset() < startOffset; | 182 return marker->startOffset() < startOffset; |
171 } | 183 } |
172 | 184 |
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
762 | 774 |
763 } // namespace blink | 775 } // namespace blink |
764 | 776 |
765 #ifndef NDEBUG | 777 #ifndef NDEBUG |
766 void showDocumentMarkers(const blink::DocumentMarkerController* controller) | 778 void showDocumentMarkers(const blink::DocumentMarkerController* controller) |
767 { | 779 { |
768 if (controller) | 780 if (controller) |
769 controller->showMarkers(); | 781 controller->showMarkers(); |
770 } | 782 } |
771 #endif | 783 #endif |
OLD | NEW |