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

Side by Side Diff: third_party/WebKit/Source/core/events/InputEvent.cpp

Issue 2374743002: [InputEvent] Support |deleteByDrag|, |insertFromDrop| and fire in sequential order (Closed)
Patch Set: Yosin's review 2 Created 4 years, 2 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/events/InputEvent.h" 5 #include "core/events/InputEvent.h"
6 6
7 #include "core/dom/Range.h" 7 #include "core/dom/Range.h"
8 #include "core/events/EventDispatcher.h" 8 #include "core/events/EventDispatcher.h"
9 #include "public/platform/WebEditingCommandType.h" 9 #include "public/platform/WebEditingCommandType.h"
10 10
11 namespace blink { 11 namespace blink {
12 12
13 namespace { 13 namespace {
14 14
15 const struct { 15 const struct {
16 InputEvent::InputType inputType; 16 InputEvent::InputType inputType;
17 const char* stringName; 17 const char* stringName;
18 } kInputTypeStringNameMap[] = { 18 } kInputTypeStringNameMap[] = {
19 {InputEvent::InputType::None, ""}, 19 {InputEvent::InputType::None, ""},
20 {InputEvent::InputType::InsertText, "insertText"}, 20 {InputEvent::InputType::InsertText, "insertText"},
21 {InputEvent::InputType::InsertNonText, "insertNonText"}, 21 {InputEvent::InputType::InsertNonText, "insertNonText"},
22 {InputEvent::InputType::InsertLineBreak, "insertLineBreak"}, 22 {InputEvent::InputType::InsertLineBreak, "insertLineBreak"},
23 {InputEvent::InputType::InsertParagraph, "insertParagraph"}, 23 {InputEvent::InputType::InsertParagraph, "insertParagraph"},
24 {InputEvent::InputType::InsertOrderedList, "insertOrderedList"}, 24 {InputEvent::InputType::InsertOrderedList, "insertOrderedList"},
25 {InputEvent::InputType::InsertUnorderedList, "insertUnorderedList"}, 25 {InputEvent::InputType::InsertUnorderedList, "insertUnorderedList"},
26 {InputEvent::InputType::InsertHorizontalRule, "insertHorizontalRule"}, 26 {InputEvent::InputType::InsertHorizontalRule, "insertHorizontalRule"},
27 {InputEvent::InputType::InsertFromPaste, "insertFromPaste"}, 27 {InputEvent::InputType::InsertFromPaste, "insertFromPaste"},
28 {InputEvent::InputType::InsertFromDrop, "insertFromDrop"},
28 {InputEvent::InputType::DeleteComposedCharacterForward, 29 {InputEvent::InputType::DeleteComposedCharacterForward,
29 "deleteComposedCharacterForward"}, 30 "deleteComposedCharacterForward"},
30 {InputEvent::InputType::DeleteComposedCharacterBackward, 31 {InputEvent::InputType::DeleteComposedCharacterBackward,
31 "deleteComposedCharacterBackward"}, 32 "deleteComposedCharacterBackward"},
32 {InputEvent::InputType::DeleteWordBackward, "deleteWordBackward"}, 33 {InputEvent::InputType::DeleteWordBackward, "deleteWordBackward"},
33 {InputEvent::InputType::DeleteWordForward, "deleteWordForward"}, 34 {InputEvent::InputType::DeleteWordForward, "deleteWordForward"},
34 {InputEvent::InputType::DeleteLineBackward, "deleteLineBackward"}, 35 {InputEvent::InputType::DeleteLineBackward, "deleteLineBackward"},
35 {InputEvent::InputType::DeleteLineForward, "deleteLineForward"}, 36 {InputEvent::InputType::DeleteLineForward, "deleteLineForward"},
36 {InputEvent::InputType::DeleteContentBackward, "deleteContentBackward"}, 37 {InputEvent::InputType::DeleteContentBackward, "deleteContentBackward"},
37 {InputEvent::InputType::DeleteContentForward, "deleteContentForward"}, 38 {InputEvent::InputType::DeleteContentForward, "deleteContentForward"},
38 {InputEvent::InputType::DeleteByCut, "deleteByCut"}, 39 {InputEvent::InputType::DeleteByCut, "deleteByCut"},
40 {InputEvent::InputType::DeleteByDrag, "deleteByDrag"},
39 {InputEvent::InputType::Undo, "undo"}, 41 {InputEvent::InputType::Undo, "undo"},
40 {InputEvent::InputType::Redo, "redo"}, 42 {InputEvent::InputType::Redo, "redo"},
41 {InputEvent::InputType::Bold, "bold"}, 43 {InputEvent::InputType::Bold, "bold"},
42 {InputEvent::InputType::Italic, "italic"}, 44 {InputEvent::InputType::Italic, "italic"},
43 {InputEvent::InputType::Underline, "underline"}, 45 {InputEvent::InputType::Underline, "underline"},
44 {InputEvent::InputType::StrikeThrough, "strikeThrough"}, 46 {InputEvent::InputType::StrikeThrough, "strikeThrough"},
45 {InputEvent::InputType::Superscript, "superscript"}, 47 {InputEvent::InputType::Superscript, "superscript"},
46 {InputEvent::InputType::Subscript, "subscript"}, 48 {InputEvent::InputType::Subscript, "subscript"},
47 {InputEvent::InputType::JustifyCenter, "justifyCenter"}, 49 {InputEvent::InputType::JustifyCenter, "justifyCenter"},
48 {InputEvent::InputType::JustifyRight, "justifyRight"}, 50 {InputEvent::InputType::JustifyRight, "justifyRight"},
49 {InputEvent::InputType::JustifyLeft, "justifyLeft"}, 51 {InputEvent::InputType::JustifyLeft, "justifyLeft"},
50 {InputEvent::InputType::Indent, "indent"}, 52 {InputEvent::InputType::Indent, "indent"},
51 {InputEvent::InputType::Outdent, "outdent"}, 53 {InputEvent::InputType::Outdent, "outdent"},
52 {InputEvent::InputType::RemoveFormat, "removeFormat"}, 54 {InputEvent::InputType::RemoveFormat, "removeFormat"},
53 {InputEvent::InputType::Drag, "drag"},
54 {InputEvent::InputType::JustifyFull, "justifyFull"}, 55 {InputEvent::InputType::JustifyFull, "justifyFull"},
55 {InputEvent::InputType::SetColor, "setColor"}, 56 {InputEvent::InputType::SetColor, "setColor"},
56 {InputEvent::InputType::SetBackgroundColor, "setBackgroundColor"}, 57 {InputEvent::InputType::SetBackgroundColor, "setBackgroundColor"},
57 {InputEvent::InputType::SetFont, "setFont"}, 58 {InputEvent::InputType::SetFont, "setFont"},
58 {InputEvent::InputType::ChangeAttributes, "changeAttributes"}, 59 {InputEvent::InputType::ChangeAttributes, "changeAttributes"},
59 {InputEvent::InputType::SetWritingDirection, "setWritingDirection"}, 60 {InputEvent::InputType::SetWritingDirection, "setWritingDirection"},
60 {InputEvent::InputType::Unscript, "unscript"}, 61 {InputEvent::InputType::Unscript, "unscript"},
61 {InputEvent::InputType::CreateLink, "createLink"}, 62 {InputEvent::InputType::CreateLink, "createLink"},
62 {InputEvent::InputType::Unlink, "unlink"}, 63 {InputEvent::InputType::Unlink, "unlink"},
63 {InputEvent::InputType::FormatBlock, "formatBlock"}, 64 {InputEvent::InputType::FormatBlock, "formatBlock"},
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 // 3. We don't want authors to hold live |Range| indefinitely by holding |In putEvent|, so we 219 // 3. We don't want authors to hold live |Range| indefinitely by holding |In putEvent|, so we
219 // clear them after dispatch. 220 // clear them after dispatch.
220 // Authors should explicitly call |getTargetRanges()|->|toRange()| if they wan t to keep a copy of |Range|. 221 // Authors should explicitly call |getTargetRanges()|->|toRange()| if they wan t to keep a copy of |Range|.
221 // See Editing TF meeting notes: 222 // See Editing TF meeting notes:
222 // https://docs.google.com/document/d/1hCj6QX77NYIVY0RWrMHT1Yra6t8_Qu8PopaWLG0 AM58/edit?usp=sharing 223 // https://docs.google.com/document/d/1hCj6QX77NYIVY0RWrMHT1Yra6t8_Qu8PopaWLG0 AM58/edit?usp=sharing
223 event().m_ranges.clear(); 224 event().m_ranges.clear();
224 return result; 225 return result;
225 } 226 }
226 227
227 } // namespace blink 228 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/events/InputEvent.h ('k') | third_party/WebKit/Source/core/page/DragController.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698