| Index: third_party/WebKit/Source/core/editing/FrameSelection.cpp
|
| diff --git a/third_party/WebKit/Source/core/editing/FrameSelection.cpp b/third_party/WebKit/Source/core/editing/FrameSelection.cpp
|
| index 61653f2e4bb10791e9c466b62f9ad4886b742cbb..bad3d9ed3ca9cc2621759ccd934657edf3e20352 100644
|
| --- a/third_party/WebKit/Source/core/editing/FrameSelection.cpp
|
| +++ b/third_party/WebKit/Source/core/editing/FrameSelection.cpp
|
| @@ -283,7 +283,6 @@ void FrameSelection::setSelectionAlgorithm(const VisibleSelectionTemplate<Strate
|
| if (m_selectionEditor->visibleSelection<Strategy>() == s) {
|
| // Even if selection was not changed, selection offsets may have been
|
| // changed.
|
| - m_frame->inputMethodController().cancelCompositionIfSelectionIsInvalid();
|
| notifyLayoutObjectOfSelectionChange(userTriggered);
|
| return;
|
| }
|
| @@ -330,10 +329,9 @@ void FrameSelection::setSelectionAlgorithm(const VisibleSelectionTemplate<Strate
|
| // boundary, selection for the DOM tree is shrunk while that for the
|
| // flat tree is not. Additionally, this case occurs in some edge cases.
|
| // See also: editing/pasteboard/4076267-3.html
|
| - if (oldSelection == m_selectionEditor->visibleSelection<Strategy>()) {
|
| - m_frame->inputMethodController().cancelCompositionIfSelectionIsInvalid();
|
| + if (oldSelection == m_selectionEditor->visibleSelection<Strategy>())
|
| return;
|
| - }
|
| +
|
| m_frame->editor().respondToChangedSelection(oldSelectionInDOMTree, options);
|
| if (userTriggered == UserTriggered) {
|
| ScrollAlignment alignment;
|
|
|