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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/events/inputevents/before-input-inputtype.html

Issue 1752933002: [InputEvent] Fire 'beforeinput' during typing, pressing hot keys and IME composition (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 8 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
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>InputEvent: beforeinput inputType</title>
5 <script src="../../../resources/testharness.js"></script>
6 <script src="../../../resources/testharnessreport.js"></script>
7 </head>
8 <body>
9 <input type="text" id="txt">
10 <script>
11 test(function() {
12 var lastInputType = '';
13 var txt = document.getElementById('txt');
14 txt.addEventListener('beforeinput', function(event) {
15 lastInputType = event.inputType;
16 });
17 if (!window.eventSender) {
18 document.write('This test requires eventSender');
19 } else {
20 var kNoBeforeInputFired = 'noBeforeInputFired';
21 function testKeyDownInputType(key, modifiers, inputType) {
22 lastInputType = kNoBeforeInputFired;
23 eventSender.keyDown(key, modifiers);
24 assert_equals(lastInputType, inputType, `${modifiers.toString()}+${k ey} should produce inputType: ${inputType}`);
25 }
26
27 txt.focus();
28 // Typing
29 testKeyDownInputType('a', [], 'insertText');
30 testKeyDownInputType('6', [], 'insertText');
31 testKeyDownInputType('backspace', [], 'deleteContent');
32 testKeyDownInputType('l', ['shiftKey'], 'insertText');
33 testKeyDownInputType('w', ['shiftKey'], 'insertText');
34
35 // Keyboard commands
36 var isMacOS = (navigator.userAgent.indexOf('Mac OS X') != -1);
37 if (!isMacOS) {
38 // MacOS's eventSender does not work on hot keys other than arrows.
39 testKeyDownInputType('z', ['ctrlKey'], 'undo');
40 testKeyDownInputType('z', ['ctrlKey', 'shiftKey'], 'redo');
41 }
42 // Move command should not generate input events.
43 testKeyDownInputType('leftArrow', [], kNoBeforeInputFired);
44 testKeyDownInputType('leftArrow', ['shiftKey'], kNoBeforeInputFired);
45 testKeyDownInputType('home', [], kNoBeforeInputFired);
46 }
47 }, 'Testing beforeinput inputType');
48 </script>
49 </body>
50 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698