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

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

Issue 2366693005: Mark paragraph-related functions deprecated in VisibleUnits (Closed)
Patch Set: Add output for DCHECK Created 4 years, 3 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
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 7691d8695260de48c5c590456107a94f85faddcc..8d7815339a40f91e04cf693aec9861b4a5369240 100644
--- a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
+++ b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
@@ -1610,9 +1610,8 @@ PositionTemplate<Strategy> startOfParagraphAlgorithm(const PositionTemplate<Stra
template <typename Strategy>
VisiblePositionTemplate<Strategy> startOfParagraphAlgorithm(const VisiblePositionTemplate<Strategy>& visiblePosition, EditingBoundaryCrossingRule boundaryCrossingRule)
{
- // TODO(xiaochengh): Ensure that this function is called with a valid
- // |visiblePosition|, and add |DCHECK(visiblePosition.isValid())|;
- return createVisiblePositionDeprecated(startOfParagraphAlgorithm(visiblePosition.deepEquivalent(), boundaryCrossingRule));
+ DCHECK(visiblePosition.isValid()) << visiblePosition;
+ return createVisiblePosition(startOfParagraphAlgorithm(visiblePosition.deepEquivalent(), boundaryCrossingRule));
}
VisiblePosition startOfParagraph(const VisiblePosition& c, EditingBoundaryCrossingRule boundaryCrossingRule)
@@ -1626,6 +1625,22 @@ VisiblePositionInFlatTree startOfParagraph(const VisiblePositionInFlatTree& c, E
}
template <typename Strategy>
+VisiblePositionTemplate<Strategy> startOfParagraphAlgorithmDeprecated(const VisiblePositionTemplate<Strategy>& visiblePosition, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return createVisiblePositionDeprecated(startOfParagraphAlgorithm(visiblePosition.deepEquivalent(), boundaryCrossingRule));
+}
+
+VisiblePosition startOfParagraphDeprecated(const VisiblePosition& c, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return startOfParagraphAlgorithmDeprecated<EditingStrategy>(c, boundaryCrossingRule);
+}
+
+VisiblePositionInFlatTree startOfParagraphDeprecated(const VisiblePositionInFlatTree& c, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return startOfParagraphAlgorithmDeprecated<EditingInFlatTreeStrategy>(c, boundaryCrossingRule);
+}
+
+template <typename Strategy>
static PositionTemplate<Strategy> endOfParagraphAlgorithm(const PositionTemplate<Strategy>& position, EditingBoundaryCrossingRule boundaryCrossingRule)
{
Node* const startNode = position.anchorNode();
@@ -1703,8 +1718,7 @@ static PositionTemplate<Strategy> endOfParagraphAlgorithm(const PositionTemplate
template <typename Strategy>
static VisiblePositionTemplate<Strategy> endOfParagraphAlgorithm(const VisiblePositionTemplate<Strategy>& visiblePosition, EditingBoundaryCrossingRule boundaryCrossingRule)
{
- // TODO(xiaochengh): Ensure that this function is called with a valid
- // |visiblePosition|, and add |DCHECK(visiblePosition.isValid())|;
+ DCHECK(visiblePosition.isValid()) << visiblePosition;
return createVisiblePositionDeprecated(endOfParagraphAlgorithm(visiblePosition.deepEquivalent(), boundaryCrossingRule));
}
@@ -1718,9 +1732,26 @@ VisiblePositionInFlatTree endOfParagraph(const VisiblePositionInFlatTree& c, Edi
return endOfParagraphAlgorithm<EditingInFlatTreeStrategy>(c, boundaryCrossingRule);
}
+template <typename Strategy>
+static VisiblePositionTemplate<Strategy> endOfParagraphAlgorithmDeprecated(const VisiblePositionTemplate<Strategy>& visiblePosition, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return createVisiblePositionDeprecated(endOfParagraphAlgorithm(visiblePosition.deepEquivalent(), boundaryCrossingRule));
+}
+
+VisiblePosition endOfParagraphDeprecated(const VisiblePosition& c, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return endOfParagraphAlgorithmDeprecated<EditingStrategy>(c, boundaryCrossingRule);
+}
+
+VisiblePositionInFlatTree endOfParagraphDeprecated(const VisiblePositionInFlatTree& c, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return endOfParagraphAlgorithmDeprecated<EditingInFlatTreeStrategy>(c, boundaryCrossingRule);
+}
+
// FIXME: isStartOfParagraph(startOfNextParagraph(pos)) is not always true
VisiblePosition startOfNextParagraph(const VisiblePosition& visiblePosition)
{
+ DCHECK(visiblePosition.isValid()) << visiblePosition;
VisiblePosition paragraphEnd(endOfParagraph(visiblePosition, CanSkipOverEditingBoundary));
VisiblePosition afterParagraphEnd(nextPositionOf(paragraphEnd, CannotCrossEditingBoundary));
// The position after the last position in the last cell of a table
@@ -1730,14 +1761,34 @@ VisiblePosition startOfNextParagraph(const VisiblePosition& visiblePosition)
return afterParagraphEnd;
}
+// FIXME: isStartOfParagraph(startOfNextParagraph(pos)) is not always true
+VisiblePosition startOfNextParagraphDeprecated(const VisiblePosition& visiblePosition)
+{
+ VisiblePosition paragraphEnd(endOfParagraphDeprecated(visiblePosition, CanSkipOverEditingBoundary));
+ VisiblePosition afterParagraphEnd(nextPositionOf(paragraphEnd, CannotCrossEditingBoundary));
+ // The position after the last position in the last cell of a table
+ // is not the start of the next paragraph.
+ if (tableElementJustBefore(afterParagraphEnd))
+ return nextPositionOf(afterParagraphEnd, CannotCrossEditingBoundary);
+ return afterParagraphEnd;
+}
+
bool inSameParagraph(const VisiblePosition& a, const VisiblePosition& b, EditingBoundaryCrossingRule boundaryCrossingRule)
{
+ DCHECK(a.isValid()) << a;
+ DCHECK(b.isValid()) << b;
return a.isNotNull() && startOfParagraph(a, boundaryCrossingRule).deepEquivalent() == startOfParagraph(b, boundaryCrossingRule).deepEquivalent();
}
+bool inSameParagraphDeprecated(const VisiblePosition& a, const VisiblePosition& b, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return a.isNotNull() && startOfParagraphDeprecated(a, boundaryCrossingRule).deepEquivalent() == startOfParagraphDeprecated(b, boundaryCrossingRule).deepEquivalent();
+}
+
template <typename Strategy>
static bool isStartOfParagraphAlgorithm(const VisiblePositionTemplate<Strategy>& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
{
+ DCHECK(pos.isValid()) << pos;
return pos.isNotNull() && pos.deepEquivalent() == startOfParagraph(pos, boundaryCrossingRule).deepEquivalent();
}
@@ -1752,8 +1803,25 @@ bool isStartOfParagraph(const VisiblePositionInFlatTree& pos, EditingBoundaryCro
}
template <typename Strategy>
+static bool isStartOfParagraphAlgorithmDeprecated(const VisiblePositionTemplate<Strategy>& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return pos.isNotNull() && pos.deepEquivalent() == startOfParagraphDeprecated(pos, boundaryCrossingRule).deepEquivalent();
+}
+
+bool isStartOfParagraphDeprecated(const VisiblePosition& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return isStartOfParagraphAlgorithmDeprecated<EditingStrategy>(pos, boundaryCrossingRule);
+}
+
+bool isStartOfParagraphDeprecated(const VisiblePositionInFlatTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return isStartOfParagraphAlgorithmDeprecated<EditingInFlatTreeStrategy>(pos, boundaryCrossingRule);
+}
+
+template <typename Strategy>
static bool isEndOfParagraphAlgorithm(const VisiblePositionTemplate<Strategy>& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
{
+ DCHECK(pos.isValid()) << pos;
return pos.isNotNull() && pos.deepEquivalent() == endOfParagraph(pos, boundaryCrossingRule).deepEquivalent();
}
@@ -1767,6 +1835,22 @@ bool isEndOfParagraph(const VisiblePositionInFlatTree& pos, EditingBoundaryCross
return isEndOfParagraphAlgorithm<EditingInFlatTreeStrategy>(pos, boundaryCrossingRule);
}
+template <typename Strategy>
+static bool isEndOfParagraphAlgorithmDeprecated(const VisiblePositionTemplate<Strategy>& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return pos.isNotNull() && pos.deepEquivalent() == endOfParagraphDeprecated(pos, boundaryCrossingRule).deepEquivalent();
+}
+
+bool isEndOfParagraphDeprecated(const VisiblePosition& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return isEndOfParagraphAlgorithmDeprecated<EditingStrategy>(pos, boundaryCrossingRule);
+}
+
+bool isEndOfParagraphDeprecated(const VisiblePositionInFlatTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule)
+{
+ return isEndOfParagraphAlgorithmDeprecated<EditingInFlatTreeStrategy>(pos, boundaryCrossingRule);
+}
+
VisiblePosition previousParagraphPosition(const VisiblePosition& p, LayoutUnit x)
{
VisiblePosition pos = p;

Powered by Google App Engine
This is Rietveld 408576698