Chromium Code Reviews| Index: third_party/WebKit/Source/core/editing/EditingUtilities.cpp |
| diff --git a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp |
| index f712083d97c6d69bd944635a0b5b6692421a277b..9ef0a9113e378a084c232a231a1edc8b015fca15 100644 |
| --- a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp |
| +++ b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp |
| @@ -1402,12 +1402,13 @@ Position leadingWhitespacePosition(const Position& position, TextAffinity affini |
| return Position(); |
| if (enclosingBlockFlowElement(*anchorNode) != enclosingBlockFlowElement(*position.anchorNode())) |
| return Position(); |
| - if (!anchorNode->isTextNode()) |
| + if (option == NotConsiderNonCollapsibleWhitespace && anchorNode->layoutObject() && !anchorNode->layoutObject()->style()->collapseWhiteSpace()) |
| return Position(); |
| const String& string = toText(anchorNode)->data(); |
| const UChar previousCharacter = string[prev.computeOffsetInContainerNode()]; |
| - const bool isSpace = option == ConsiderNonCollapsibleWhitespace ? (isSpaceOrNewline(previousCharacter) || previousCharacter == noBreakSpaceCharacter) : isCollapsibleWhitespace(previousCharacter); |
| - if (!isSpace || !isEditablePosition(prev)) |
| + if (!isSpaceOrNewline(previousCharacter) && previousCharacter != noBreakSpaceCharacter) |
|
yoichio
2016/04/01 05:10:05
This check works whether option is?
yosin_UTC9
2016/04/01 05:53:37
Go tit. Revert this change.
|
| + return Position(); |
| + if (!isEditablePosition(prev)) |
| return Position(); |
| return prev; |
| } |