Index: Source/core/editing/Position.cpp |
diff --git a/Source/core/editing/Position.cpp b/Source/core/editing/Position.cpp |
index 5c458e5eba619acdeee2e3329262443a45c3765e..f8f4f7bdea407d6b4afab27feab9176d4615bc6e 100644 |
--- a/Source/core/editing/Position.cpp |
+++ b/Source/core/editing/Position.cpp |
@@ -32,6 +32,7 @@ |
#include "core/dom/shadow/ElementShadow.h" |
#include "core/editing/EditingUtilities.h" |
#include "core/editing/PositionIterator.h" |
+#include "core/editing/TextAffinity.h" |
#include "core/editing/VisiblePosition.h" |
#include "core/editing/VisibleUnits.h" |
#include "core/editing/iterators/TextIterator.h" |
@@ -947,7 +948,7 @@ bool isRenderedCharacter(const Position& position) |
} |
template <typename Strategy> |
-InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(EAffinity affinity) const |
+InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(TextAffinity affinity) const |
{ |
return computeInlineBoxPosition(affinity, primaryDirectionOf(*anchorNode())); |
} |
@@ -1011,7 +1012,7 @@ PositionAlgorithm<Strategy> upstreamIgnoringEditingBoundaries(PositionAlgorithm< |
} |
template <typename Strategy> |
-InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(EAffinity affinity, TextDirection primaryDirection) const |
+InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(TextAffinity affinity, TextDirection primaryDirection) const |
{ |
InlineBox* inlineBox = nullptr; |
int caretOffset = computeEditingOffset(); |
@@ -1032,7 +1033,7 @@ InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(EAffinit |
return InlineBoxPosition(inlineBox, caretOffset); |
} |
- return equivalent.computeInlineBoxPosition(UPSTREAM, primaryDirection); |
+ return equivalent.computeInlineBoxPosition(TextAffinity::Upstream, primaryDirection); |
} |
if (layoutObject->isBox()) { |
inlineBox = toLayoutBox(layoutObject)->inlineBoxWrapper(); |
@@ -1055,14 +1056,14 @@ InlineBoxPosition PositionAlgorithm<Strategy>::computeInlineBoxPosition(EAffinit |
if (caretOffset > caretMinOffset && caretOffset < caretMaxOffset) |
return InlineBoxPosition(box, caretOffset); |
- if (((caretOffset == caretMaxOffset) ^ (affinity == DOWNSTREAM)) |
- || ((caretOffset == caretMinOffset) ^ (affinity == UPSTREAM)) |
+ if (((caretOffset == caretMaxOffset) ^ (affinity == TextAffinity::Downstream)) |
+ || ((caretOffset == caretMinOffset) ^ (affinity == TextAffinity::Upstream)) |
|| (caretOffset == caretMaxOffset && box->nextLeafChild() && box->nextLeafChild()->isLineBreak())) |
break; |
candidate = box; |
} |
- if (candidate && candidate == textLayoutObject->lastTextBox() && affinity == DOWNSTREAM) { |
+ if (candidate && candidate == textLayoutObject->lastTextBox() && affinity == TextAffinity::Downstream) { |
box = searchAheadForBetterMatch(textLayoutObject); |
if (box) |
caretOffset = box->caretMinOffset(); |