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

Unified Diff: third_party/WebKit/Source/core/editing/Editor.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
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/editing/InputMethodController.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 07092f9962c0d0e2b684969c50e866cff9b6863a..8c1574d2f6b1515b416dc1e438d534daa00fa57d 100644
--- a/third_party/WebKit/Source/core/editing/Editor.cpp
+++ b/third_party/WebKit/Source/core/editing/Editor.cpp
@@ -331,7 +331,7 @@ bool Editor::deleteWithDirection(EditCommandSource source,
if (isTypingAction) {
DCHECK(frame().document());
TypingCommand::deleteKeyPressed(
- *frame().document(),
+ *frame().document(), source,
canSmartCopyOrDelete() ? TypingCommand::SmartDelete : 0, granularity);
revealSelectionAfterEditingOperation();
} else {
@@ -353,13 +353,13 @@ bool Editor::deleteWithDirection(EditCommandSource source,
case DeleteDirection::Forward:
DCHECK(frame().document());
TypingCommand::forwardDeleteKeyPressed(
- *frame().document(), &editingState, options, granularity);
+ *frame().document(), source, &editingState, options, granularity);
if (editingState.isAborted())
return false;
break;
case DeleteDirection::Backward:
DCHECK(frame().document());
- TypingCommand::deleteKeyPressed(*frame().document(), options,
+ TypingCommand::deleteKeyPressed(*frame().document(), source, options,
granularity);
break;
}
@@ -375,9 +375,8 @@ bool Editor::deleteWithDirection(EditCommandSource source,
return true;
}
-// TODO(chongz): Pass |EditCommandSource| to |CompositeEditCommand|.
void Editor::deleteSelectionWithSmartDelete(
- EditCommandSource,
+ EditCommandSource source,
DeleteMode deleteMode,
InputEvent::InputType inputType,
const Position& referenceMovePosition) {
@@ -392,7 +391,7 @@ void Editor::deleteSelectionWithSmartDelete(
*frame().document(), deleteMode == DeleteMode::Smart,
kMergeBlocksAfterDelete, kExpandForSpecialElements, kSanitizeMarkup,
inputType, referenceMovePosition)
- ->apply();
+ ->apply(source);
}
void Editor::pasteAsPlainText(const String& pastingText, bool smartReplace) {
@@ -570,8 +569,7 @@ bool Editor::canSmartReplaceWithPasteboard(Pasteboard* pasteboard) {
return smartInsertDeleteEnabled() && pasteboard->canSmartReplace();
}
-// TODO(chongz): Pass |EditCommandSource| to |CompositeEditCommand|.
-void Editor::replaceSelectionWithFragment(EditCommandSource,
+void Editor::replaceSelectionWithFragment(EditCommandSource source,
DocumentFragment* fragment,
bool selectReplacement,
bool smartReplace,
@@ -594,7 +592,7 @@ void Editor::replaceSelectionWithFragment(EditCommandSource,
DCHECK(frame().document());
ReplaceSelectionCommand::create(*frame().document(), fragment, options,
inputType)
- ->apply();
+ ->apply(source);
revealSelectionAfterEditingOperation();
}
@@ -622,7 +620,7 @@ void Editor::replaceSelectionAfterDragging(DocumentFragment* fragment,
DCHECK(frame().document());
ReplaceSelectionCommand::create(*frame().document(), fragment, options,
InputEvent::InputType::InsertFromDrop)
- ->apply();
+ ->apply(EditCommandSource::kMenuOrKeyBinding);
}
bool Editor::deleteSelectionAfterDraggingWithEvents(
@@ -709,10 +707,9 @@ void Editor::respondToChangedContents(const VisibleSelection& endingSelection) {
client().respondToChangedContents();
}
-// TODO(chongz): Pass |EditCommandSource| to |CompositeEditCommand|.
-void Editor::removeFormattingAndStyle(EditCommandSource) {
+void Editor::removeFormattingAndStyle(EditCommandSource source) {
DCHECK(frame().document());
- RemoveFormatCommand::create(*frame().document())->apply();
+ RemoveFormatCommand::create(*frame().document())->apply(source);
}
void Editor::registerCommandGroup(CompositeEditCommand* commandGroupWrapper) {
@@ -751,14 +748,13 @@ void Editor::applyStyle(EditCommandSource source,
DCHECK(frame().document());
ApplyStyleCommand::create(*frame().document(),
EditingStyle::create(style), inputType)
- ->apply();
+ ->apply(source);
}
break;
}
}
-// TODO(chongz): Pass |EditCommandSource| to |CompositeEditCommand|.
-void Editor::applyParagraphStyle(EditCommandSource,
+void Editor::applyParagraphStyle(EditCommandSource source,
StylePropertySet* style,
InputEvent::InputType inputType) {
if (frame().selection().isNone() || !style)
@@ -766,7 +762,7 @@ void Editor::applyParagraphStyle(EditCommandSource,
DCHECK(frame().document());
ApplyStyleCommand::create(*frame().document(), EditingStyle::create(style),
inputType, ApplyStyleCommand::ForceBlockProperties)
- ->apply();
+ ->apply(source);
}
void Editor::applyStyleToSelection(EditCommandSource source,
@@ -986,7 +982,7 @@ bool Editor::insertTextWithoutSendingTextEvent(EditCommandSource source,
// Insert the text
TypingCommand::insertText(
- *selection.start().document(), text, selection,
+ *selection.start().document(), source, text, selection,
selectInsertedText ? TypingCommand::SelectInsertedText : 0,
triggeringEvent && triggeringEvent->isComposition()
? TypingCommand::TextCompositionConfirm
@@ -1012,7 +1008,11 @@ bool Editor::insertLineBreak() {
VisiblePosition caret = frame().selection().selection().visibleStart();
bool alignToEdge = isEndOfEditableOrNonEditableContent(caret);
DCHECK(frame().document());
- if (!TypingCommand::insertLineBreak(*frame().document()))
+ // we can pass |EditCommandSource::kMenuOrKeyBinding| because
+ // |insertLineBreak()| is only used by |Editor::handleTextEvent()| and
+ // |Editor::insertParagraphSeparator()|.
+ if (!TypingCommand::insertLineBreak(*frame().document(),
+ EditCommandSource::kMenuOrKeyBinding))
return false;
revealSelectionAfterEditingOperation(
alignToEdge ? ScrollAlignment::alignToEdgeIfNeeded
@@ -1032,7 +1032,11 @@ bool Editor::insertParagraphSeparator() {
bool alignToEdge = isEndOfEditableOrNonEditableContent(caret);
DCHECK(frame().document());
EditingState editingState;
- if (!TypingCommand::insertParagraphSeparator(*frame().document()))
+ // We can |EditCommandSource::kMenuOrKeyBinding| because
+ // |Editor::insertParagraphSeparator()| is only used by
+ // |Editor::handleTextEvent()|.
+ if (!TypingCommand::insertParagraphSeparator(
+ *frame().document(), EditCommandSource::kMenuOrKeyBinding))
return false;
revealSelectionAfterEditingOperation(
alignToEdge ? ScrollAlignment::alignToEdgeIfNeeded
@@ -1417,8 +1421,7 @@ IntRect Editor::firstRectForRange(const EphemeralRange& range) const {
startCaretRect.height());
}
-// TODO(chongz): Pass |EditCommandSource| to |CompositeEditCommand|.
-void Editor::computeAndSetTypingStyle(EditCommandSource,
+void Editor::computeAndSetTypingStyle(EditCommandSource source,
StylePropertySet* style,
InputEvent::InputType inputType) {
if (!style || style->isEmpty()) {
@@ -1444,7 +1447,7 @@ void Editor::computeAndSetTypingStyle(EditCommandSource,
if (!blockStyle->isEmpty()) {
DCHECK(frame().document());
ApplyStyleCommand::create(*frame().document(), blockStyle, inputType)
- ->apply();
+ ->apply(source);
}
// Set the remaining style as the typing style.
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/editing/InputMethodController.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698