| Index: Source/core/editing/VisibleSelection.cpp
|
| diff --git a/Source/core/editing/VisibleSelection.cpp b/Source/core/editing/VisibleSelection.cpp
|
| index 432cfc52e0e0a3b2e67fc6ffb3faa5f68e2ef42a..25619dfcc13ee853d29050ea5fb1bc107d310788 100644
|
| --- a/Source/core/editing/VisibleSelection.cpp
|
| +++ b/Source/core/editing/VisibleSelection.cpp
|
| @@ -593,6 +593,23 @@ void VisibleSelection::setWithoutValidation(const Position& base, const Position
|
| didChange();
|
| }
|
|
|
| +void VisibleSelection::setWithoutValidation(const Position& base, const Position& extent, const Position& start, const Position& end)
|
| +{
|
| + ASSERT(!base.isNull());
|
| + ASSERT(!extent.isNull());
|
| + ASSERT(!start.isNull());
|
| + ASSERT(!end.isNull());
|
| + ASSERT(m_affinity == DOWNSTREAM);
|
| + ASSERT(comparePositions(start, end) <= 0);
|
| + m_base = base;
|
| + m_extent = extent;
|
| + m_baseIsFirst = comparePositions(base, extent) <= 0;
|
| + m_start = start;
|
| + m_end = end;
|
| + m_selectionType = base == extent ? CaretSelection : RangeSelection;
|
| + didChange();
|
| +}
|
| +
|
| static Position adjustPositionForEnd(const Position& currentPosition, Node* startContainerNode)
|
| {
|
| TreeScope& treeScope = startContainerNode->treeScope();
|
|
|