Index: third_party/WebKit/Source/core/editing/Editor.cpp |
diff --git a/third_party/WebKit/Source/core/editing/Editor.cpp b/third_party/WebKit/Source/core/editing/Editor.cpp |
index 5d0c85686a345b6edbb41d7c3b46bb40eaa3ee0f..2687acad99fa8b707d9f38454d862641e5d4b7ff 100644 |
--- a/third_party/WebKit/Source/core/editing/Editor.cpp |
+++ b/third_party/WebKit/Source/core/editing/Editor.cpp |
@@ -46,6 +46,7 @@ |
#include "core/editing/EditingUtilities.h" |
#include "core/editing/InputMethodController.h" |
#include "core/editing/RenderedPosition.h" |
+#include "core/editing/TextSuggestionController.h" |
#include "core/editing/VisibleUnits.h" |
#include "core/editing/commands/ApplyStyleCommand.h" |
#include "core/editing/commands/DeleteSelectionCommand.h" |
@@ -763,7 +764,9 @@ void Editor::respondToChangedContents(const Position& position) { |
cache->handleEditableTextContentChanged(node); |
} |
- spellChecker().respondToChangedContents(); |
+ spellChecker().updateMarkersForWordsAffectedByEditing(true); |
+ frame().textSuggestionController().removeSuggestionMarkersAffectedByEditing( |
+ true); |
client().respondToChangedContents(); |
} |
@@ -1044,8 +1047,11 @@ bool Editor::insertTextWithoutSendingTextEvent( |
if (!selection.isContentEditable()) |
return false; |
+ bool firstCharIsSpaceOrNewline = isSpaceOrNewline(text[0]); |
spellChecker().updateMarkersForWordsAffectedByEditing( |
- isSpaceOrNewline(text[0])); |
+ firstCharIsSpaceOrNewline); |
+ frame().textSuggestionController().removeSuggestionMarkersAffectedByEditing( |
+ firstCharIsSpaceOrNewline); |
// Insert the text |
TypingCommand::insertText( |
@@ -1126,6 +1132,8 @@ void Editor::cut(EditorCommandSource source) { |
// TODO(yosin) We should use early return style here. |
if (canDeleteRange(selectedRange())) { |
spellChecker().updateMarkersForWordsAffectedByEditing(true); |
+ frame().textSuggestionController().removeSuggestionMarkersAffectedByEditing( |
+ true); |
if (enclosingTextControl(frame() |
.selection() |
.computeVisibleSelectionInDOMTreeDeprecated() |
@@ -1192,6 +1200,8 @@ void Editor::paste(EditorCommandSource source) { |
if (!canPaste()) |
return; |
spellChecker().updateMarkersForWordsAffectedByEditing(false); |
+ frame().textSuggestionController().removeSuggestionMarkersAffectedByEditing( |
+ false); |
ResourceFetcher* loader = frame().document()->fetcher(); |
ResourceCacheValidationSuppressor validationSuppressor(loader); |
@@ -1228,6 +1238,8 @@ void Editor::pasteAsPlainText(EditorCommandSource source) { |
if (!canPaste()) |
return; |
spellChecker().updateMarkersForWordsAffectedByEditing(false); |
+ frame().textSuggestionController().removeSuggestionMarkersAffectedByEditing( |
+ false); |
pasteAsPlainTextWithPasteboard(Pasteboard::generalPasteboard()); |
} |