Index: third_party/WebKit/Source/core/editing/commands/InsertListCommand.cpp |
diff --git a/third_party/WebKit/Source/core/editing/commands/InsertListCommand.cpp b/third_party/WebKit/Source/core/editing/commands/InsertListCommand.cpp |
index 9b16ad8b03461d9d3aa4b3a398bacf613c3a16ce..799b67dc1bdd03601102179e1ef1c88ede986ba7 100644 |
--- a/third_party/WebKit/Source/core/editing/commands/InsertListCommand.cpp |
+++ b/third_party/WebKit/Source/core/editing/commands/InsertListCommand.cpp |
@@ -155,10 +155,14 @@ void InsertListCommand::doApply(EditingState* editingState) { |
// consistent and then use a left margin/padding rule here. |
if (visibleEnd.deepEquivalent() != visibleStart.deepEquivalent() && |
isStartOfParagraph(visibleEnd, CanSkipOverEditingBoundary)) { |
- setEndingSelection(createVisibleSelection( |
- visibleStart, |
- previousPositionOf(visibleEnd, CannotCrossEditingBoundary), |
- endingSelection().isDirectional())); |
+ const VisiblePosition& newEnd = |
+ previousPositionOf(visibleEnd, CannotCrossEditingBoundary); |
+ SelectionInDOMTree::Builder builder; |
+ builder.setIsDirectional(endingSelection().isDirectional()); |
+ builder.collapse(visibleStart.toPositionWithAffinity()); |
+ if (newEnd.isNotNull()) |
+ builder.extend(newEnd.deepEquivalent()); |
+ setEndingSelection(createVisibleSelection(builder.build())); |
if (!endingSelection().rootEditableElement()) |
return; |
} |
@@ -277,9 +281,14 @@ void InsertListCommand::doApply(EditingState* editingState) { |
visibleStartOfSelection = createVisiblePosition(startOfSelection); |
} |
- setEndingSelection( |
- createVisibleSelection(visibleStartOfSelection, visibleEndOfSelection, |
- endingSelection().isDirectional())); |
+ setEndingSelection(createVisibleSelection( |
+ SelectionInDOMTree::Builder() |
+ .setAffinity(visibleStartOfSelection.affinity()) |
+ .setBaseAndExtentDeprecated( |
+ visibleStartOfSelection.deepEquivalent(), |
+ visibleEndOfSelection.deepEquivalent()) |
+ .setIsDirectional(endingSelection().isDirectional()) |
+ .build())); |
return; |
} |