Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(307)

Unified Diff: third_party/WebKit/Source/core/editing/InputMethodController.cpp

Issue 2579253002: [EditCommandSource] Pass source to |CompositEditCommand| and |TypingCommand| (3/3) (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/editing/InputMethodController.cpp
diff --git a/third_party/WebKit/Source/core/editing/InputMethodController.cpp b/third_party/WebKit/Source/core/editing/InputMethodController.cpp
index 31c9749edccde72b0c9ed5bcbab20b8d01b1344a..4debf150004b75497f83efa480177e71d5c8a50a 100644
--- a/third_party/WebKit/Source/core/editing/InputMethodController.cpp
+++ b/third_party/WebKit/Source/core/editing/InputMethodController.cpp
@@ -144,8 +144,9 @@ void insertTextDuringCompositionWithEvents(
switch (compositionType) {
case TypingCommand::TextCompositionType::TextCompositionUpdate:
case TypingCommand::TextCompositionType::TextCompositionConfirm:
- TypingCommand::insertText(*frame.document(), text, options,
- compositionType, isIncrementalInsertion);
+ TypingCommand::insertText(
+ *frame.document(), EditCommandSource::kMenuOrKeyBinding, text,
+ options, compositionType, isIncrementalInsertion);
break;
case TypingCommand::TextCompositionType::TextCompositionCancel:
// TODO(chongz): Use TypingCommand::insertText after TextEvent was
@@ -299,8 +300,10 @@ bool InputMethodController::replaceComposition(const String& text) {
// If text is empty, then delete the old composition here. If text is
// non-empty, InsertTextCommand::input will delete the old composition with
// an optimized replace operation.
- if (text.isEmpty())
- TypingCommand::deleteSelection(document(), 0);
+ if (text.isEmpty()) {
+ TypingCommand::deleteSelection(document(),
+ EditCommandSource::kMenuOrKeyBinding, 0);
+ }
clear();
@@ -499,6 +502,7 @@ void InputMethodController::setComposition(
// composition, however some IME (e.g. Japanese IBus-Anthy) did this, so
// we simply delete selection without sending extra events.
TypingCommand::deleteSelection(document(),
+ EditCommandSource::kMenuOrKeyBinding,
TypingCommand::PreventSpellChecking);
}
@@ -776,7 +780,8 @@ void InputMethodController::extendSelectionAndDelete(int before, int after) {
dispatchBeforeInputEditorCommand(
document().focusedElement(), InputEvent::InputType::DeleteContentBackward,
new RangeVector(1, m_frame->selection().firstRange()));
- TypingCommand::deleteSelection(document());
+ TypingCommand::deleteSelection(document(),
+ EditCommandSource::kMenuOrKeyBinding);
}
// TODO(yabinh): We should reduce the number of selectionchange events.
@@ -811,7 +816,8 @@ void InputMethodController::deleteSurroundingText(int before, int after) {
const int adjustedStart = start - static_cast<int>(diff);
if (!setSelectionOffsets(PlainTextRange(adjustedStart, selectionStart)))
return;
- TypingCommand::deleteSelection(document());
+ TypingCommand::deleteSelection(document(),
+ EditCommandSource::kMenuOrKeyBinding);
selectionEnd = selectionEnd - (selectionStart - adjustedStart);
selectionStart = adjustedStart;
@@ -836,7 +842,8 @@ void InputMethodController::deleteSurroundingText(int before, int after) {
const int adjustedEnd = end + static_cast<int>(diff);
if (!setSelectionOffsets(PlainTextRange(selectionEnd, adjustedEnd)))
return;
- TypingCommand::deleteSelection(document());
+ TypingCommand::deleteSelection(document(),
+ EditCommandSource::kMenuOrKeyBinding);
}
setSelectionOffsets(PlainTextRange(selectionStart, selectionEnd));

Powered by Google App Engine
This is Rietveld 408576698