Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(224)

Unified Diff: third_party/WebKit/Source/core/editing/VisibleUnits.cpp

Issue 2725053006: Change VisibleUnits::previousBoundary to return Position rather than VisiblePosition (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/editing/VisibleUnits.cpp
diff --git a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
index 2afc55ab57045cf8db7bf340c963840737fafd63..f428e4ef85031b0b1959a829d988dbbb0dd2a2fd 100644
--- a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
+++ b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
@@ -810,14 +810,14 @@ typedef unsigned (*BoundarySearchFunction)(const UChar*,
bool& needMoreContext);
template <typename Strategy>
-static VisiblePositionTemplate<Strategy> previousBoundary(
+static PositionTemplate<Strategy> previousBoundary(
const VisiblePositionTemplate<Strategy>& c,
BoundarySearchFunction searchFunction) {
DCHECK(c.isValid()) << c;
const PositionTemplate<Strategy> pos = c.deepEquivalent();
Node* boundary = parentEditingBoundary(pos);
if (!boundary)
- return VisiblePositionTemplate<Strategy>();
+ return PositionTemplate<Strategy>();
const PositionTemplate<Strategy> start =
PositionTemplate<Strategy>::editingPositionOf(boundary, 0)
@@ -888,14 +888,13 @@ static VisiblePositionTemplate<Strategy> previousBoundary(
}
if (!next)
- return createVisiblePosition(it.atEnd() ? it.startPosition() : pos);
+ return it.atEnd() ? it.startPosition() : pos;
Node* node = it.startContainer();
int boundaryOffset = remainingLength + next;
if (node->isTextNode() && boundaryOffset <= node->maxCharacterOffset()) {
// The next variable contains a usable index into a text node
- return createVisiblePosition(
- PositionTemplate<Strategy>(node, boundaryOffset));
+ return PositionTemplate<Strategy>(node, boundaryOffset);
}
// Use the character iterator to translate the next value into a DOM
@@ -903,7 +902,7 @@ static VisiblePositionTemplate<Strategy> previousBoundary(
BackwardsCharacterIteratorAlgorithm<Strategy> charIt(start, end);
charIt.advance(string.size() - suffixLength - next);
// TODO(yosin) charIt can get out of shadow host.
- return createVisiblePosition(charIt.endPosition());
+ return charIt.endPosition();
}
template <typename Strategy>
@@ -1061,7 +1060,7 @@ static VisiblePositionTemplate<Strategy> startOfWordAlgorithm(
if (p.isNull())
return c;
}
- return previousBoundary(p, startWordBoundary);
+ return createVisiblePosition(previousBoundary(p, startWordBoundary));
}
VisiblePosition startOfWord(const VisiblePosition& c, EWordSide side) {
@@ -1136,7 +1135,8 @@ static unsigned previousWordPositionBoundary(
VisiblePosition previousWordPosition(const VisiblePosition& c) {
DCHECK(c.isValid()) << c;
- VisiblePosition prev = previousBoundary(c, previousWordPositionBoundary);
+ VisiblePosition prev =
+ createVisiblePosition(previousBoundary(c, previousWordPositionBoundary));
return honorEditingBoundaryAtOrBefore(prev, c.deepEquivalent());
}
@@ -1674,7 +1674,7 @@ template <typename Strategy>
static VisiblePositionTemplate<Strategy> startOfSentenceAlgorithm(
const VisiblePositionTemplate<Strategy>& c) {
DCHECK(c.isValid()) << c;
- return previousBoundary(c, startSentenceBoundary);
+ return createVisiblePosition(previousBoundary(c, startSentenceBoundary));
}
VisiblePosition startOfSentence(const VisiblePosition& c) {
@@ -1726,7 +1726,8 @@ static unsigned previousSentencePositionBoundary(
VisiblePosition previousSentencePosition(const VisiblePosition& c) {
DCHECK(c.isValid()) << c;
- VisiblePosition prev = previousBoundary(c, previousSentencePositionBoundary);
+ VisiblePosition prev = createVisiblePosition(
+ previousBoundary(c, previousSentencePositionBoundary));
return honorEditingBoundaryAtOrBefore(prev, c.deepEquivalent());
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698