Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <title>InputEvent: beforeinput for Cut and Paste</title> | 4 <title>InputEvent: beforeinput for Cut and Paste</title> |
| 5 <script src="../../../resources/testharness.js"></script> | 5 <script src="../../../resources/testharness.js"></script> |
| 6 <script src="../../../resources/testharnessreport.js"></script> | 6 <script src="../../../resources/testharnessreport.js"></script> |
| 7 </head> | 7 </head> |
| 8 <body> | 8 <body> |
| 9 <p id="editable" contenteditable></p> | 9 <p id="editable" contenteditable></p> |
| 10 <script> | 10 <script> |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 33 testClipboardEventOrder('Paste', ['paste', 'beforeinput', 'input']); | 33 testClipboardEventOrder('Paste', ['paste', 'beforeinput', 'input']); |
| 34 }, 'Testing Cut and Paste ordering'); | 34 }, 'Testing Cut and Paste ordering'); |
| 35 | 35 |
| 36 test(function() { | 36 test(function() { |
| 37 assert_not_equals(window.eventSender, undefined, 'This test requires eventSe nder.'); | 37 assert_not_equals(window.eventSender, undefined, 'This test requires eventSe nder.'); |
| 38 var editable = document.getElementById('editable'); | 38 var editable = document.getElementById('editable'); |
| 39 | 39 |
| 40 var lastPlainTextData = ""; | 40 var lastPlainTextData = ""; |
| 41 var lastHTMLData = ""; | 41 var lastHTMLData = ""; |
| 42 editable.addEventListener('beforeinput', event => { | 42 editable.addEventListener('beforeinput', event => { |
| 43 assert_equals(event.data, null, 'Cut&Paste should have null |data| field ') | 43 assert_equals(event.data, "", 'Cut&Paste should have empty plain text |d ata| field') |
|
foolip
2016/12/15 10:53:49
s/empty plain text/empty string/
(https://chromiu
| |
| 44 lastPlainTextData = event.dataTransfer ? event.dataTransfer.getData('tex t/plain') : null; | 44 lastPlainTextData = event.dataTransfer ? event.dataTransfer.getData('tex t/plain') : null; |
| 45 lastHTMLData = event.dataTransfer ? event.dataTransfer.getData('text/htm l') : null; | 45 lastHTMLData = event.dataTransfer ? event.dataTransfer.getData('text/htm l') : null; |
| 46 }); | 46 }); |
| 47 function testClipboardDataTransfer(command, expectedPlainText, expectedHTML) { | 47 function testClipboardDataTransfer(command, expectedPlainText, expectedHTML) { |
| 48 lastPlainTextData = ""; | 48 lastPlainTextData = ""; |
| 49 lastHTMLData = ""; | 49 lastHTMLData = ""; |
| 50 eventSender.keyDown(command); | 50 eventSender.keyDown(command); |
| 51 assert_equals(lastPlainTextData, expectedPlainText, `Testing ${command} getData('text/plain')`); | 51 assert_equals(lastPlainTextData, expectedPlainText, `Testing ${command} getData('text/plain')`); |
| 52 if (expectedHTML && expectedHTML.test) { | 52 if (expectedHTML && expectedHTML.test) { |
| 53 assert_regexp_match(lastHTMLData, expectedHTML, `Testing ${command} getData('text/html')`); | 53 assert_regexp_match(lastHTMLData, expectedHTML, `Testing ${command} getData('text/html')`); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 85 selection.extend(editable, 1); | 85 selection.extend(editable, 1); |
| 86 // The text won't be removed but should still update Clipboard. | 86 // The text won't be removed but should still update Clipboard. |
| 87 eventSender.keyDown('Cut'); | 87 eventSender.keyDown('Cut'); |
| 88 selection.collapse(editable, 0); | 88 selection.collapse(editable, 0); |
| 89 eventSender.keyDown('Paste'); | 89 eventSender.keyDown('Paste'); |
| 90 assert_equals(editable.innerHTML, 'abcabc', 'Testing Cut.preventDefault() an d Paste.') | 90 assert_equals(editable.innerHTML, 'abcabc', 'Testing Cut.preventDefault() an d Paste.') |
| 91 }, 'Testing Cut and Paste preventDefault()'); | 91 }, 'Testing Cut and Paste preventDefault()'); |
| 92 </script> | 92 </script> |
| 93 </body> | 93 </body> |
| 94 </html> | 94 </html> |
| OLD | NEW |