diff options
Diffstat (limited to 'chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h')
-rw-r--r-- | chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h b/chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h index f48245089f7..aa76c05b045 100644 --- a/chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h +++ b/chromium/third_party/WebKit/Source/core/editing/VisiblePosition.h @@ -28,6 +28,7 @@ #include "core/dom/Position.h" #include "core/editing/EditingBoundary.h" +#include "platform/heap/Handle.h" #include "platform/text/TextDirection.h" namespace WebCore { @@ -48,12 +49,13 @@ namespace WebCore { class InlineBox; class Node; -class VisiblePosition { +class VisiblePosition FINAL { + DISALLOW_ALLOCATION(); public: // NOTE: UPSTREAM affinity will be used only if pos is at end of a wrapped line, // otherwise it will be converted to DOWNSTREAM VisiblePosition() : m_affinity(VP_DEFAULT_AFFINITY) { } - VisiblePosition(const Position&, EAffinity = VP_DEFAULT_AFFINITY); + explicit VisiblePosition(const Position&, EAffinity = VP_DEFAULT_AFFINITY); explicit VisiblePosition(const PositionWithAffinity&); void clear() { m_deepPosition.clear(); } @@ -90,11 +92,6 @@ public: m_deepPosition.getInlineBoxAndOffset(m_affinity, inlineBox, caretOffset); } - void getInlineBoxAndOffset(TextDirection primaryDirection, InlineBox*& inlineBox, int& caretOffset) const - { - m_deepPosition.getInlineBoxAndOffset(m_affinity, primaryDirection, inlineBox, caretOffset); - } - // Rect is local to the returned renderer LayoutRect localCaretRect(RenderObject*&) const; // Bounds of (possibly transformed) caret in absolute coords @@ -103,6 +100,8 @@ public: // FIXME: navigation with transforms should be smarter. int lineDirectionPointForBlockDirectionNavigation() const; + void trace(Visitor*); + #ifndef NDEBUG void debugPosition(const char* msg = "") const; void formatForDebugger(char* buffer, unsigned length) const; @@ -131,11 +130,10 @@ inline bool operator!=(const VisiblePosition& a, const VisiblePosition& b) return !(a == b); } -PassRefPtr<Range> makeRange(const VisiblePosition&, const VisiblePosition&); +PassRefPtrWillBeRawPtr<Range> makeRange(const VisiblePosition&, const VisiblePosition&); bool setStart(Range*, const VisiblePosition&); bool setEnd(Range*, const VisiblePosition&); VisiblePosition startVisiblePosition(const Range*, EAffinity); -VisiblePosition endVisiblePosition(const Range*, EAffinity); Element* enclosingBlockFlowElement(const VisiblePosition&); |