| Index: Source/core/layout/LayoutObject.cpp
|
| diff --git a/Source/core/layout/LayoutObject.cpp b/Source/core/layout/LayoutObject.cpp
|
| index 28c61e1fc62b67b095b35bab84d089161fb73d33..b1faf1809cf4e33a37ef7322e8949fa327f8fde3 100644
|
| --- a/Source/core/layout/LayoutObject.cpp
|
| +++ b/Source/core/layout/LayoutObject.cpp
|
| @@ -2992,10 +2992,10 @@ PositionWithAffinity LayoutObject::createPositionWithAffinity(int offset, TextAf
|
| if (!node->hasEditableStyle()) {
|
| // If it can be found, we prefer a visually equivalent position that is editable.
|
| const Position position = Position(node, offset);
|
| - Position candidate = position.downstream(CanCrossEditingBoundary);
|
| + Position candidate = mostBackwardCaretPosition(position, CanCrossEditingBoundary);
|
| if (candidate.anchorNode()->hasEditableStyle())
|
| return PositionWithAffinity(candidate, affinity);
|
| - candidate = position.upstream(CanCrossEditingBoundary);
|
| + candidate = mostForwardCaretPosition(position, CanCrossEditingBoundary);
|
| if (candidate.anchorNode()->hasEditableStyle())
|
| return PositionWithAffinity(candidate, affinity);
|
| }
|
|
|