| <!DOCTYPE html> |
| <html> |
| <body> |
| <script src="../../resources/js-test-pre.js"></script> |
| <script> |
| description("Tests that DataTransfer's types contains text/plain but not no image types when pasting a plain text. To manually test, click on the button below then trigger paste (Command+V or Control+V)."); |
| jsTestIsAsync = true; |
| |
| function check(event) { |
| types = event.clipboardData.types; |
| shouldBeTrue('types.includes("text/plain")'); |
| shouldBeUndefined('types.find((type) => type.includes("png"))'); |
| shouldBeUndefined('types.find((type) => type.includes("jpeg"))'); |
| shouldBeUndefined('types.find((type) => type.includes("tiff"))'); |
| document.getElementById('container').style.display = 'none'; |
| finishJSTest(); |
| } |
| |
| function runTest() |
| { |
| const source = document.getElementById('source'); |
| source.focus(); |
| source.contentDocument.execCommand('selectAll', false, null); |
| source.contentDocument.execCommand('copy', false, null); |
| document.getElementById('destination').focus(); |
| document.getElementById('destination').textContent = 'Now, paste here'; |
| document.execCommand('selectAll', false, null); |
| |
| document.querySelector('button').style.display = 'none'; |
| source.style.display = 'none'; |
| |
| document.execCommand('paste', false, null); |
| } |
| |
| successfullyParsed = true; |
| |
| </script> |
| <div id="container"> |
| <button onclick="runTest()">Copy</button><br> |
| <iframe id="source" onload="window.testRunner && runTest()" src="../resources/text-pasteboard-data.txt"></iframe> |
| <div id="destination" contenteditable="true" onpaste="check(event)"></div> |
| </div> |
| |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |