Commit d01ebaa9 authored by Yoshifumi Inoue's avatar Yoshifumi Inoue Committed by Commit Bot

Introduce enum class SelectionModifyDirection as replacement of SelectionDirection

This patch introduces enum class |SelectionModifyDirection| as replacement of
|SelectionDirection| since it is used as a parameter of
|SelectinModifier::Modify()| for improving code readability.

Change-Id: Ib249d01106503138811214895c7e8018e48758c5
Reviewed-on: https://chromium-review.googlesource.com/579248
Commit-Queue: Yoshifumi Inoue <yosin@chromium.org>
Reviewed-by: default avatarYoichi Osato <yoichio@chromium.org>
Cr-Commit-Position: refs/heads/master@{#488602}
parent 71aba56b
...@@ -423,15 +423,15 @@ void DOMSelection::modify(const String& alter_string, ...@@ -423,15 +423,15 @@ void DOMSelection::modify(const String& alter_string,
else else
return; return;
SelectionDirection direction; SelectionModifyDirection direction;
if (DeprecatedEqualIgnoringCase(direction_string, "forward")) if (DeprecatedEqualIgnoringCase(direction_string, "forward"))
direction = kDirectionForward; direction = SelectionModifyDirection::kForward;
else if (DeprecatedEqualIgnoringCase(direction_string, "backward")) else if (DeprecatedEqualIgnoringCase(direction_string, "backward"))
direction = kDirectionBackward; direction = SelectionModifyDirection::kBackward;
else if (DeprecatedEqualIgnoringCase(direction_string, "left")) else if (DeprecatedEqualIgnoringCase(direction_string, "left"))
direction = kDirectionLeft; direction = SelectionModifyDirection::kLeft;
else if (DeprecatedEqualIgnoringCase(direction_string, "right")) else if (DeprecatedEqualIgnoringCase(direction_string, "right"))
direction = kDirectionRight; direction = SelectionModifyDirection::kRight;
else else
return; return;
......
...@@ -342,7 +342,7 @@ static DispatchEventResult DispatchSelectStart( ...@@ -342,7 +342,7 @@ static DispatchEventResult DispatchSelectStart(
// When |userTriggered| is |NotUserTrigged|, return value specifies whether // When |userTriggered| is |NotUserTrigged|, return value specifies whether
// selection is modified or not. // selection is modified or not.
bool FrameSelection::Modify(SelectionModifyAlteration alter, bool FrameSelection::Modify(SelectionModifyAlteration alter,
SelectionDirection direction, SelectionModifyDirection direction,
TextGranularity granularity, TextGranularity granularity,
SetSelectionBy set_selection_by) { SetSelectionBy set_selection_by) {
SelectionModifier selection_modifier(*GetFrame(), SelectionModifier selection_modifier(*GetFrame(),
......
...@@ -51,6 +51,7 @@ class Range; ...@@ -51,6 +51,7 @@ class Range;
class SelectionEditor; class SelectionEditor;
class LayoutSelection; class LayoutSelection;
enum class SelectionModifyAlteration; enum class SelectionModifyAlteration;
enum class SelectionModifyDirection;
class TextIteratorBehavior; class TextIteratorBehavior;
struct PaintInvalidatorContext; struct PaintInvalidatorContext;
...@@ -144,7 +145,7 @@ class CORE_EXPORT FrameSelection final ...@@ -144,7 +145,7 @@ class CORE_EXPORT FrameSelection final
bool Contains(const LayoutPoint&); bool Contains(const LayoutPoint&);
bool Modify(SelectionModifyAlteration, bool Modify(SelectionModifyAlteration,
SelectionDirection, SelectionModifyDirection,
TextGranularity, TextGranularity,
SetSelectionBy = SetSelectionBy::kSystem); SetSelectionBy = SetSelectionBy::kSystem);
......
...@@ -172,7 +172,8 @@ TEST_F(FrameSelectionTest, ModifyExtendWithFlatTree) { ...@@ -172,7 +172,8 @@ TEST_F(FrameSelectionTest, ModifyExtendWithFlatTree) {
.Extend( .Extend(
ToPositionInDOMTree(PositionInFlatTree(GetDocument().body(), 2))) ToPositionInDOMTree(PositionInFlatTree(GetDocument().body(), 2)))
.Build()); .Build());
Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionForward, Selection().Modify(SelectionModifyAlteration::kExtend,
SelectionModifyDirection::kForward,
TextGranularity::kWord); TextGranularity::kWord);
EXPECT_EQ(Position(two, 0), VisibleSelectionInDOMTree().Start()); EXPECT_EQ(Position(two, 0), VisibleSelectionInDOMTree().Start());
EXPECT_EQ(Position(two, 3), VisibleSelectionInDOMTree().End()); EXPECT_EQ(Position(two, 3), VisibleSelectionInDOMTree().End());
...@@ -188,8 +189,8 @@ TEST_F(FrameSelectionTest, ModifyWithUserTriggered) { ...@@ -188,8 +189,8 @@ TEST_F(FrameSelectionTest, ModifyWithUserTriggered) {
Selection().SetSelection( Selection().SetSelection(
SelectionInDOMTree::Builder().Collapse(end_of_text).Build()); SelectionInDOMTree::Builder().Collapse(end_of_text).Build());
EXPECT_FALSE( EXPECT_FALSE(Selection().Modify(
Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
TextGranularity::kCharacter, SetSelectionBy::kSystem)) TextGranularity::kCharacter, SetSelectionBy::kSystem))
<< "Selection.modify() returns false for non-user-triggered call when " << "Selection.modify() returns false for non-user-triggered call when "
"selection isn't modified."; "selection isn't modified.";
...@@ -197,9 +198,9 @@ TEST_F(FrameSelectionTest, ModifyWithUserTriggered) { ...@@ -197,9 +198,9 @@ TEST_F(FrameSelectionTest, ModifyWithUserTriggered) {
Selection().ComputeVisibleSelectionInDOMTreeDeprecated().Start()) Selection().ComputeVisibleSelectionInDOMTreeDeprecated().Start())
<< "Selection isn't modified"; << "Selection isn't modified";
EXPECT_TRUE(Selection().Modify(SelectionModifyAlteration::kMove, EXPECT_TRUE(Selection().Modify(
kDirectionForward, TextGranularity::kCharacter, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser)) TextGranularity::kCharacter, SetSelectionBy::kUser))
<< "Selection.modify() returns true for user-triggered call"; << "Selection.modify() returns true for user-triggered call";
EXPECT_EQ(end_of_text, EXPECT_EQ(end_of_text,
Selection().ComputeVisibleSelectionInDOMTreeDeprecated().Start()) Selection().ComputeVisibleSelectionInDOMTreeDeprecated().Start())
......
...@@ -103,7 +103,7 @@ TextDirection SelectionModifier::DirectionOfSelection() const { ...@@ -103,7 +103,7 @@ TextDirection SelectionModifier::DirectionOfSelection() const {
} }
static bool IsBaseStart(const VisibleSelection& visible_selection, static bool IsBaseStart(const VisibleSelection& visible_selection,
SelectionDirection direction) { SelectionModifyDirection direction) {
if (visible_selection.IsDirectional()) { if (visible_selection.IsDirectional()) {
// Make base and extent match start and end so we extend the user-visible // Make base and extent match start and end so we extend the user-visible
// selection. This only matters for cases where base and extend point to // selection. This only matters for cases where base and extend point to
...@@ -112,16 +112,16 @@ static bool IsBaseStart(const VisibleSelection& visible_selection, ...@@ -112,16 +112,16 @@ static bool IsBaseStart(const VisibleSelection& visible_selection,
return visible_selection.IsBaseFirst(); return visible_selection.IsBaseFirst();
} }
switch (direction) { switch (direction) {
case kDirectionRight: case SelectionModifyDirection::kRight:
return DirectionOf(visible_selection) == TextDirection::kLtr; return DirectionOf(visible_selection) == TextDirection::kLtr;
case kDirectionForward: case SelectionModifyDirection::kForward:
return true; return true;
case kDirectionLeft: case SelectionModifyDirection::kLeft:
return DirectionOf(visible_selection) != TextDirection::kLtr; return DirectionOf(visible_selection) != TextDirection::kLtr;
case kDirectionBackward: case SelectionModifyDirection::kBackward:
return false; return false;
} }
NOTREACHED() << "We should handle " << direction; NOTREACHED() << "We should handle " << static_cast<int>(direction);
return true; return true;
} }
...@@ -132,7 +132,7 @@ static bool IsBaseStart(const VisibleSelection& visible_selection, ...@@ -132,7 +132,7 @@ static bool IsBaseStart(const VisibleSelection& visible_selection,
// selection. // selection.
static SelectionInDOMTree PrepareToExtendSeelction( static SelectionInDOMTree PrepareToExtendSeelction(
const VisibleSelection& visible_selection, const VisibleSelection& visible_selection,
SelectionDirection direction) { SelectionModifyDirection direction) {
if (visible_selection.Start().IsNull()) if (visible_selection.Start().IsNull())
return visible_selection.AsSelection(); return visible_selection.AsSelection();
const bool base_is_start = IsBaseStart(visible_selection, direction); const bool base_is_start = IsBaseStart(visible_selection, direction);
...@@ -561,7 +561,7 @@ static bool IsBoundary(TextGranularity granularity) { ...@@ -561,7 +561,7 @@ static bool IsBoundary(TextGranularity granularity) {
} }
bool SelectionModifier::Modify(SelectionModifyAlteration alter, bool SelectionModifier::Modify(SelectionModifyAlteration alter,
SelectionDirection direction, SelectionModifyDirection direction,
TextGranularity granularity) { TextGranularity granularity) {
DCHECK(!GetFrame()->GetDocument()->NeedsLayoutTreeUpdate()); DCHECK(!GetFrame()->GetDocument()->NeedsLayoutTreeUpdate());
DocumentLifecycle::DisallowTransitionScope disallow_transition( DocumentLifecycle::DisallowTransitionScope disallow_transition(
...@@ -576,25 +576,25 @@ bool SelectionModifier::Modify(SelectionModifyAlteration alter, ...@@ -576,25 +576,25 @@ bool SelectionModifier::Modify(SelectionModifyAlteration alter,
VisiblePosition original_start_position = selection_.VisibleStart(); VisiblePosition original_start_position = selection_.VisibleStart();
VisiblePosition position; VisiblePosition position;
switch (direction) { switch (direction) {
case kDirectionRight: case SelectionModifyDirection::kRight:
if (alter == SelectionModifyAlteration::kMove) if (alter == SelectionModifyAlteration::kMove)
position = ModifyMovingRight(granularity); position = ModifyMovingRight(granularity);
else else
position = ModifyExtendingRight(granularity); position = ModifyExtendingRight(granularity);
break; break;
case kDirectionForward: case SelectionModifyDirection::kForward:
if (alter == SelectionModifyAlteration::kExtend) if (alter == SelectionModifyAlteration::kExtend)
position = ModifyExtendingForward(granularity); position = ModifyExtendingForward(granularity);
else else
position = ModifyMovingForward(granularity); position = ModifyMovingForward(granularity);
break; break;
case kDirectionLeft: case SelectionModifyDirection::kLeft:
if (alter == SelectionModifyAlteration::kMove) if (alter == SelectionModifyAlteration::kMove)
position = ModifyMovingLeft(granularity); position = ModifyMovingLeft(granularity);
else else
position = ModifyExtendingLeft(granularity); position = ModifyExtendingLeft(granularity);
break; break;
case kDirectionBackward: case SelectionModifyDirection::kBackward:
if (alter == SelectionModifyAlteration::kExtend) if (alter == SelectionModifyAlteration::kExtend)
position = ModifyExtendingBackward(granularity); position = ModifyExtendingBackward(granularity);
else else
...@@ -668,11 +668,11 @@ bool SelectionModifier::Modify(SelectionModifyAlteration alter, ...@@ -668,11 +668,11 @@ bool SelectionModifier::Modify(SelectionModifyAlteration alter,
.Build()); .Build());
} else { } else {
TextDirection text_direction = DirectionOfEnclosingBlock(); TextDirection text_direction = DirectionOfEnclosingBlock();
if (direction == kDirectionForward || if (direction == SelectionModifyDirection::kForward ||
(text_direction == TextDirection::kLtr && (text_direction == TextDirection::kLtr &&
direction == kDirectionRight) || direction == SelectionModifyDirection::kRight) ||
(text_direction == TextDirection::kRtl && (text_direction == TextDirection::kRtl &&
direction == kDirectionLeft)) { direction == SelectionModifyDirection::kLeft)) {
selection_ = CreateVisibleSelection( selection_ = CreateVisibleSelection(
SelectionInDOMTree::Builder() SelectionInDOMTree::Builder()
.Collapse(selection_.IsBaseFirst() .Collapse(selection_.IsBaseFirst()
...@@ -726,8 +726,8 @@ bool SelectionModifier::ModifyWithPageGranularity( ...@@ -726,8 +726,8 @@ bool SelectionModifier::ModifyWithPageGranularity(
if (alter == SelectionModifyAlteration::kExtend) { if (alter == SelectionModifyAlteration::kExtend) {
selection_ = CreateVisibleSelection(PrepareToExtendSeelction( selection_ = CreateVisibleSelection(PrepareToExtendSeelction(
selection_, direction == SelectionModifyVerticalDirection::kUp selection_, direction == SelectionModifyVerticalDirection::kUp
? kDirectionBackward ? SelectionModifyDirection::kBackward
: kDirectionForward)); : SelectionModifyDirection::kForward));
} }
VisiblePosition pos; VisiblePosition pos;
......
...@@ -38,6 +38,7 @@ class LocalFrame; ...@@ -38,6 +38,7 @@ class LocalFrame;
enum class SelectionModifyAlteration { kMove, kExtend }; enum class SelectionModifyAlteration { kMove, kExtend };
enum class SelectionModifyVerticalDirection { kUp, kDown }; enum class SelectionModifyVerticalDirection { kUp, kDown };
enum class SelectionModifyDirection { kBackward, kForward, kLeft, kRight };
class SelectionModifier { class SelectionModifier {
STACK_ALLOCATED(); STACK_ALLOCATED();
...@@ -54,7 +55,9 @@ class SelectionModifier { ...@@ -54,7 +55,9 @@ class SelectionModifier {
} }
const VisibleSelection& Selection() const { return selection_; } const VisibleSelection& Selection() const { return selection_; }
bool Modify(SelectionModifyAlteration, SelectionDirection, TextGranularity); bool Modify(SelectionModifyAlteration,
SelectionModifyDirection,
TextGranularity);
bool ModifyWithPageGranularity(SelectionModifyAlteration, bool ModifyWithPageGranularity(SelectionModifyAlteration,
unsigned vertical_distance, unsigned vertical_distance,
SelectionModifyVerticalDirection); SelectionModifyVerticalDirection);
......
...@@ -42,12 +42,6 @@ namespace blink { ...@@ -42,12 +42,6 @@ namespace blink {
class SelectionAdjuster; class SelectionAdjuster;
const TextAffinity kSelDefaultAffinity = TextAffinity::kDownstream; const TextAffinity kSelDefaultAffinity = TextAffinity::kDownstream;
enum SelectionDirection {
kDirectionForward,
kDirectionBackward,
kDirectionRight,
kDirectionLeft
};
template <typename Strategy> template <typename Strategy>
class CORE_TEMPLATE_CLASS_EXPORT VisibleSelectionTemplate { class CORE_TEMPLATE_CLASS_EXPORT VisibleSelectionTemplate {
......
...@@ -197,7 +197,7 @@ InputEvent::InputType InputTypeFromCommandType( ...@@ -197,7 +197,7 @@ InputEvent::InputType InputTypeFromCommandType(
StaticRangeVector* RangesFromCurrentSelectionOrExtendCaret( StaticRangeVector* RangesFromCurrentSelectionOrExtendCaret(
const LocalFrame& frame, const LocalFrame& frame,
SelectionDirection direction, SelectionModifyDirection direction,
TextGranularity granularity) { TextGranularity granularity) {
frame.GetDocument()->UpdateStyleAndLayoutIgnorePendingStylesheets(); frame.GetDocument()->UpdateStyleAndLayoutIgnorePendingStylesheets();
SelectionModifier selection_modifier( SelectionModifier selection_modifier(
...@@ -1155,7 +1155,8 @@ static bool ExecuteMoveBackward(LocalFrame& frame, ...@@ -1155,7 +1155,8 @@ static bool ExecuteMoveBackward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kBackward,
TextGranularity::kCharacter, SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1165,8 +1166,8 @@ static bool ExecuteMoveBackwardAndModifySelection(LocalFrame& frame, ...@@ -1165,8 +1166,8 @@ static bool ExecuteMoveBackwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, TextGranularity::kCharacter, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1174,9 +1175,9 @@ static bool ExecuteMoveDown(LocalFrame& frame, ...@@ -1174,9 +1175,9 @@ static bool ExecuteMoveDown(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
return frame.Selection().Modify(SelectionModifyAlteration::kMove, return frame.Selection().Modify(
kDirectionForward, TextGranularity::kLine, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kLine, SetSelectionBy::kUser);
} }
static bool ExecuteMoveDownAndModifySelection(LocalFrame& frame, static bool ExecuteMoveDownAndModifySelection(LocalFrame& frame,
...@@ -1184,8 +1185,8 @@ static bool ExecuteMoveDownAndModifySelection(LocalFrame& frame, ...@@ -1184,8 +1185,8 @@ static bool ExecuteMoveDownAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kLine, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kLine, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1193,7 +1194,8 @@ static bool ExecuteMoveForward(LocalFrame& frame, ...@@ -1193,7 +1194,8 @@ static bool ExecuteMoveForward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kForward,
TextGranularity::kCharacter, SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1203,8 +1205,8 @@ static bool ExecuteMoveForwardAndModifySelection(LocalFrame& frame, ...@@ -1203,8 +1205,8 @@ static bool ExecuteMoveForwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kCharacter, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1212,16 +1214,17 @@ static bool ExecuteMoveLeft(LocalFrame& frame, ...@@ -1212,16 +1214,17 @@ static bool ExecuteMoveLeft(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
return frame.Selection().Modify(SelectionModifyAlteration::kMove, return frame.Selection().Modify(
kDirectionLeft, TextGranularity::kCharacter, SelectionModifyAlteration::kMove, SelectionModifyDirection::kLeft,
SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
} }
static bool ExecuteMoveLeftAndModifySelection(LocalFrame& frame, static bool ExecuteMoveLeftAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionLeft, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
SelectionModifyDirection::kLeft,
TextGranularity::kCharacter, SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1301,16 +1304,17 @@ static bool ExecuteMoveRight(LocalFrame& frame, ...@@ -1301,16 +1304,17 @@ static bool ExecuteMoveRight(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
return frame.Selection().Modify(SelectionModifyAlteration::kMove, return frame.Selection().Modify(
kDirectionRight, TextGranularity::kCharacter, SelectionModifyAlteration::kMove, SelectionModifyDirection::kRight,
SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
} }
static bool ExecuteMoveRightAndModifySelection(LocalFrame& frame, static bool ExecuteMoveRightAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionRight, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
SelectionModifyDirection::kRight,
TextGranularity::kCharacter, SetSelectionBy::kUser); TextGranularity::kCharacter, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1319,9 +1323,9 @@ static bool ExecuteMoveToBeginningOfDocument(LocalFrame& frame, ...@@ -1319,9 +1323,9 @@ static bool ExecuteMoveToBeginningOfDocument(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(
TextGranularity::kDocumentBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kDocumentBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1331,7 +1335,7 @@ static bool ExecuteMoveToBeginningOfDocumentAndModifySelection( ...@@ -1331,7 +1335,7 @@ static bool ExecuteMoveToBeginningOfDocumentAndModifySelection(
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionBackward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kBackward,
TextGranularity::kDocumentBoundary, SetSelectionBy::kUser); TextGranularity::kDocumentBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1340,9 +1344,9 @@ static bool ExecuteMoveToBeginningOfLine(LocalFrame& frame, ...@@ -1340,9 +1344,9 @@ static bool ExecuteMoveToBeginningOfLine(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1350,9 +1354,9 @@ static bool ExecuteMoveToBeginningOfLineAndModifySelection(LocalFrame& frame, ...@@ -1350,9 +1354,9 @@ static bool ExecuteMoveToBeginningOfLineAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(
kDirectionBackward, TextGranularity::kLineBoundary, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1360,9 +1364,9 @@ static bool ExecuteMoveToBeginningOfParagraph(LocalFrame& frame, ...@@ -1360,9 +1364,9 @@ static bool ExecuteMoveToBeginningOfParagraph(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(
TextGranularity::kParagraphBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kParagraphBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1372,7 +1376,7 @@ static bool ExecuteMoveToBeginningOfParagraphAndModifySelection( ...@@ -1372,7 +1376,7 @@ static bool ExecuteMoveToBeginningOfParagraphAndModifySelection(
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionBackward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kBackward,
TextGranularity::kParagraphBoundary, SetSelectionBy::kUser); TextGranularity::kParagraphBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1381,9 +1385,9 @@ static bool ExecuteMoveToBeginningOfSentence(LocalFrame& frame, ...@@ -1381,9 +1385,9 @@ static bool ExecuteMoveToBeginningOfSentence(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(
TextGranularity::kSentenceBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kSentenceBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1393,7 +1397,7 @@ static bool ExecuteMoveToBeginningOfSentenceAndModifySelection( ...@@ -1393,7 +1397,7 @@ static bool ExecuteMoveToBeginningOfSentenceAndModifySelection(
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionBackward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kBackward,
TextGranularity::kSentenceBoundary, SetSelectionBy::kUser); TextGranularity::kSentenceBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1402,9 +1406,9 @@ static bool ExecuteMoveToEndOfDocument(LocalFrame& frame, ...@@ -1402,9 +1406,9 @@ static bool ExecuteMoveToEndOfDocument(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(
TextGranularity::kDocumentBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kDocumentBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1413,7 +1417,7 @@ static bool ExecuteMoveToEndOfDocumentAndModifySelection(LocalFrame& frame, ...@@ -1413,7 +1417,7 @@ static bool ExecuteMoveToEndOfDocumentAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionForward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kForward,
TextGranularity::kDocumentBoundary, SetSelectionBy::kUser); TextGranularity::kDocumentBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1422,9 +1426,9 @@ static bool ExecuteMoveToEndOfSentence(LocalFrame& frame, ...@@ -1422,9 +1426,9 @@ static bool ExecuteMoveToEndOfSentence(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(
TextGranularity::kSentenceBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kSentenceBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1433,7 +1437,7 @@ static bool ExecuteMoveToEndOfSentenceAndModifySelection(LocalFrame& frame, ...@@ -1433,7 +1437,7 @@ static bool ExecuteMoveToEndOfSentenceAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionForward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kForward,
TextGranularity::kSentenceBoundary, SetSelectionBy::kUser); TextGranularity::kSentenceBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1442,9 +1446,9 @@ static bool ExecuteMoveToEndOfLine(LocalFrame& frame, ...@@ -1442,9 +1446,9 @@ static bool ExecuteMoveToEndOfLine(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1452,9 +1456,9 @@ static bool ExecuteMoveToEndOfLineAndModifySelection(LocalFrame& frame, ...@@ -1452,9 +1456,9 @@ static bool ExecuteMoveToEndOfLineAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(
kDirectionForward, TextGranularity::kLineBoundary, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1462,9 +1466,9 @@ static bool ExecuteMoveToEndOfParagraph(LocalFrame& frame, ...@@ -1462,9 +1466,9 @@ static bool ExecuteMoveToEndOfParagraph(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(
TextGranularity::kParagraphBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kParagraphBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1473,7 +1477,7 @@ static bool ExecuteMoveToEndOfParagraphAndModifySelection(LocalFrame& frame, ...@@ -1473,7 +1477,7 @@ static bool ExecuteMoveToEndOfParagraphAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify( frame.Selection().Modify(
SelectionModifyAlteration::kExtend, kDirectionForward, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kForward,
TextGranularity::kParagraphBoundary, SetSelectionBy::kUser); TextGranularity::kParagraphBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1482,7 +1486,8 @@ static bool ExecuteMoveParagraphBackward(LocalFrame& frame, ...@@ -1482,7 +1486,8 @@ static bool ExecuteMoveParagraphBackward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kBackward,
TextGranularity::kParagraph, SetSelectionBy::kUser); TextGranularity::kParagraph, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1492,8 +1497,8 @@ static bool ExecuteMoveParagraphBackwardAndModifySelection(LocalFrame& frame, ...@@ -1492,8 +1497,8 @@ static bool ExecuteMoveParagraphBackwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, TextGranularity::kParagraph, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kParagraph, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1501,7 +1506,8 @@ static bool ExecuteMoveParagraphForward(LocalFrame& frame, ...@@ -1501,7 +1506,8 @@ static bool ExecuteMoveParagraphForward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kForward,
TextGranularity::kParagraph, SetSelectionBy::kUser); TextGranularity::kParagraph, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1511,8 +1517,8 @@ static bool ExecuteMoveParagraphForwardAndModifySelection(LocalFrame& frame, ...@@ -1511,8 +1517,8 @@ static bool ExecuteMoveParagraphForwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kParagraph, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kParagraph, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1520,9 +1526,9 @@ static bool ExecuteMoveUp(LocalFrame& frame, ...@@ -1520,9 +1526,9 @@ static bool ExecuteMoveUp(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
return frame.Selection().Modify(SelectionModifyAlteration::kMove, return frame.Selection().Modify(
kDirectionBackward, TextGranularity::kLine, SelectionModifyAlteration::kMove, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kLine, SetSelectionBy::kUser);
} }
static bool ExecuteMoveUpAndModifySelection(LocalFrame& frame, static bool ExecuteMoveUpAndModifySelection(LocalFrame& frame,
...@@ -1530,8 +1536,8 @@ static bool ExecuteMoveUpAndModifySelection(LocalFrame& frame, ...@@ -1530,8 +1536,8 @@ static bool ExecuteMoveUpAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, TextGranularity::kLine, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kLine, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1539,7 +1545,8 @@ static bool ExecuteMoveWordBackward(LocalFrame& frame, ...@@ -1539,7 +1545,8 @@ static bool ExecuteMoveWordBackward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionBackward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kBackward,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1549,8 +1556,8 @@ static bool ExecuteMoveWordBackwardAndModifySelection(LocalFrame& frame, ...@@ -1549,8 +1556,8 @@ static bool ExecuteMoveWordBackwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, TextGranularity::kWord, SelectionModifyDirection::kBackward,
SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1558,7 +1565,8 @@ static bool ExecuteMoveWordForward(LocalFrame& frame, ...@@ -1558,7 +1565,8 @@ static bool ExecuteMoveWordForward(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionForward, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kForward,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1568,8 +1576,8 @@ static bool ExecuteMoveWordForwardAndModifySelection(LocalFrame& frame, ...@@ -1568,8 +1576,8 @@ static bool ExecuteMoveWordForwardAndModifySelection(LocalFrame& frame,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kWord, SelectionModifyDirection::kForward,
SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1577,7 +1585,8 @@ static bool ExecuteMoveWordLeft(LocalFrame& frame, ...@@ -1577,7 +1585,8 @@ static bool ExecuteMoveWordLeft(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionLeft, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kLeft,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1586,7 +1595,8 @@ static bool ExecuteMoveWordLeftAndModifySelection(LocalFrame& frame, ...@@ -1586,7 +1595,8 @@ static bool ExecuteMoveWordLeftAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionLeft, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
SelectionModifyDirection::kLeft,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1595,7 +1605,8 @@ static bool ExecuteMoveWordRight(LocalFrame& frame, ...@@ -1595,7 +1605,8 @@ static bool ExecuteMoveWordRight(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionRight, frame.Selection().Modify(SelectionModifyAlteration::kMove,
SelectionModifyDirection::kRight,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1604,7 +1615,8 @@ static bool ExecuteMoveWordRightAndModifySelection(LocalFrame& frame, ...@@ -1604,7 +1615,8 @@ static bool ExecuteMoveWordRightAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionRight, frame.Selection().Modify(SelectionModifyAlteration::kExtend,
SelectionModifyDirection::kRight,
TextGranularity::kWord, SetSelectionBy::kUser); TextGranularity::kWord, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1613,9 +1625,9 @@ static bool ExecuteMoveToLeftEndOfLine(LocalFrame& frame, ...@@ -1613,9 +1625,9 @@ static bool ExecuteMoveToLeftEndOfLine(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionLeft, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kLeft,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1623,9 +1635,9 @@ static bool ExecuteMoveToLeftEndOfLineAndModifySelection(LocalFrame& frame, ...@@ -1623,9 +1635,9 @@ static bool ExecuteMoveToLeftEndOfLineAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionLeft, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kLeft,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1633,9 +1645,9 @@ static bool ExecuteMoveToRightEndOfLine(LocalFrame& frame, ...@@ -1633,9 +1645,9 @@ static bool ExecuteMoveToRightEndOfLine(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kMove, kDirectionRight, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kMove, SelectionModifyDirection::kRight,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -1643,9 +1655,9 @@ static bool ExecuteMoveToRightEndOfLineAndModifySelection(LocalFrame& frame, ...@@ -1643,9 +1655,9 @@ static bool ExecuteMoveToRightEndOfLineAndModifySelection(LocalFrame& frame,
Event*, Event*,
EditorCommandSource, EditorCommandSource,
const String&) { const String&) {
frame.Selection().Modify(SelectionModifyAlteration::kExtend, kDirectionRight, frame.Selection().Modify(
TextGranularity::kLineBoundary, SelectionModifyAlteration::kExtend, SelectionModifyDirection::kRight,
SetSelectionBy::kUser); TextGranularity::kLineBoundary, SetSelectionBy::kUser);
return true; return true;
} }
...@@ -3065,28 +3077,32 @@ const StaticRangeVector* Editor::Command::GetTargetRanges() const { ...@@ -3065,28 +3077,32 @@ const StaticRangeVector* Editor::Command::GetTargetRanges() const {
case WebEditingCommandType::kDelete: case WebEditingCommandType::kDelete:
case WebEditingCommandType::kDeleteBackward: case WebEditingCommandType::kDeleteBackward:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionBackward, TextGranularity::kCharacter); *frame_, SelectionModifyDirection::kBackward,
TextGranularity::kCharacter);
case WebEditingCommandType::kDeleteForward: case WebEditingCommandType::kDeleteForward:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionForward, TextGranularity::kCharacter); *frame_, SelectionModifyDirection::kForward,
TextGranularity::kCharacter);
case WebEditingCommandType::kDeleteToBeginningOfLine: case WebEditingCommandType::kDeleteToBeginningOfLine:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionBackward, TextGranularity::kLine); *frame_, SelectionModifyDirection::kBackward, TextGranularity::kLine);
case WebEditingCommandType::kDeleteToBeginningOfParagraph: case WebEditingCommandType::kDeleteToBeginningOfParagraph:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionBackward, TextGranularity::kParagraph); *frame_, SelectionModifyDirection::kBackward,
TextGranularity::kParagraph);
case WebEditingCommandType::kDeleteToEndOfLine: case WebEditingCommandType::kDeleteToEndOfLine:
return RangesFromCurrentSelectionOrExtendCaret(*frame_, kDirectionForward, return RangesFromCurrentSelectionOrExtendCaret(
TextGranularity::kLine); *frame_, SelectionModifyDirection::kForward, TextGranularity::kLine);
case WebEditingCommandType::kDeleteToEndOfParagraph: case WebEditingCommandType::kDeleteToEndOfParagraph:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionForward, TextGranularity::kParagraph); *frame_, SelectionModifyDirection::kForward,
TextGranularity::kParagraph);
case WebEditingCommandType::kDeleteWordBackward: case WebEditingCommandType::kDeleteWordBackward:
return RangesFromCurrentSelectionOrExtendCaret( return RangesFromCurrentSelectionOrExtendCaret(
*frame_, kDirectionBackward, TextGranularity::kWord); *frame_, SelectionModifyDirection::kBackward, TextGranularity::kWord);
case WebEditingCommandType::kDeleteWordForward: case WebEditingCommandType::kDeleteWordForward:
return RangesFromCurrentSelectionOrExtendCaret(*frame_, kDirectionForward, return RangesFromCurrentSelectionOrExtendCaret(
TextGranularity::kWord); *frame_, SelectionModifyDirection::kForward, TextGranularity::kWord);
default: default:
return TargetRangesForInputEvent(*target); return TargetRangesForInputEvent(*target);
} }
......
...@@ -744,11 +744,12 @@ void TypingCommand::DeleteKeyPressed(TextGranularity granularity, ...@@ -744,11 +744,12 @@ void TypingCommand::DeleteKeyPressed(TextGranularity granularity,
SelectionModifier selection_modifier(*frame, EndingSelection()); SelectionModifier selection_modifier(*frame, EndingSelection());
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, granularity); SelectionModifyDirection::kBackward, granularity);
if (kill_ring && selection_modifier.Selection().IsCaret() && if (kill_ring && selection_modifier.Selection().IsCaret() &&
granularity != TextGranularity::kCharacter) { granularity != TextGranularity::kCharacter) {
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, TextGranularity::kCharacter); SelectionModifyDirection::kBackward,
TextGranularity::kCharacter);
} }
const VisiblePosition& visible_start(EndingSelection().VisibleStart()); const VisiblePosition& visible_start(EndingSelection().VisibleStart());
...@@ -803,7 +804,7 @@ void TypingCommand::DeleteKeyPressed(TextGranularity granularity, ...@@ -803,7 +804,7 @@ void TypingCommand::DeleteKeyPressed(TextGranularity granularity,
// Extend the selection backward into the last cell, then deletion will // Extend the selection backward into the last cell, then deletion will
// handle the move. // handle the move.
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionBackward, granularity); SelectionModifyDirection::kBackward, granularity);
// If the caret is just after a table, select the table and don't delete // If the caret is just after a table, select the table and don't delete
// anything. // anything.
} else if (Element* table = TableElementJustBefore(visible_start)) { } else if (Element* table = TableElementJustBefore(visible_start)) {
...@@ -916,11 +917,12 @@ void TypingCommand::ForwardDeleteKeyPressed(TextGranularity granularity, ...@@ -916,11 +917,12 @@ void TypingCommand::ForwardDeleteKeyPressed(TextGranularity granularity,
// root editable element or at the start of a document. // root editable element or at the start of a document.
SelectionModifier selection_modifier(*frame, EndingSelection()); SelectionModifier selection_modifier(*frame, EndingSelection());
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, granularity); SelectionModifyDirection::kForward, granularity);
if (kill_ring && selection_modifier.Selection().IsCaret() && if (kill_ring && selection_modifier.Selection().IsCaret() &&
granularity != TextGranularity::kCharacter) { granularity != TextGranularity::kCharacter) {
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kCharacter); SelectionModifyDirection::kForward,
TextGranularity::kCharacter);
} }
Position downstream_end = MostForwardCaretPosition(EndingSelection().End()); Position downstream_end = MostForwardCaretPosition(EndingSelection().End());
...@@ -959,7 +961,8 @@ void TypingCommand::ForwardDeleteKeyPressed(TextGranularity granularity, ...@@ -959,7 +961,8 @@ void TypingCommand::ForwardDeleteKeyPressed(TextGranularity granularity,
selection_modifier.Selection().IsCaret() && selection_modifier.Selection().IsCaret() &&
IsEndOfParagraph(selection_modifier.Selection().VisibleEnd())) { IsEndOfParagraph(selection_modifier.Selection().VisibleEnd())) {
selection_modifier.Modify(SelectionModifyAlteration::kExtend, selection_modifier.Modify(SelectionModifyAlteration::kExtend,
kDirectionForward, TextGranularity::kCharacter); SelectionModifyDirection::kForward,
TextGranularity::kCharacter);
} }
const VisibleSelection& selection_to_delete = selection_modifier.Selection(); const VisibleSelection& selection_to_delete = selection_modifier.Selection();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment