DescriptionFix the crash bug about selecting a marquee element.
This assertion is in CompositeEditCommand::moveParagraphs, L1223.
The assertion error happens because VisibleSelection(destination, originalIsDirectional) returns default VisibleSelection value If desitination is a marquee element.
Inside the constructor, VisiblePosition(position, _).deepPosition() returns default VisiblePosition value if position is a marquee element.
Because VisiblePosition::canonicalPosition(position) returns default Position value if position is a marquee element.
This is caused by that position.upstream() returns parent Node if position is a marquee element. This is wrong.
When a marquee element is moving, its upstream should be itself.
To fix this issue, this cl change endsOfNodeAreVisuallyDistinctPositions() called enclosingVisualBoundary() which is called from upstream().
This cl make endsOfNodeAreVisuallyDistinctPositions(node) return true if node is a marquee element.
BUG=338424
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=167617
Patch Set 1 #
Total comments: 8
Patch Set 2 : update #
Messages
Total messages: 10 (0 generated)
|