| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body> |
| <iframe name="iframe1"></iframe> |
| <iframe name="iframe2"></iframe> |
| |
| <p id="description">This test checks that we can set and paste X11-style selections.</p> |
| <div id="console"></div> |
| |
| <script> |
| |
| var document1 = frames['iframe1'].document; |
| var document2 = frames['iframe2'].document; |
| |
| function createEditable(doc, tagName, markup) { |
| var node = doc.createElement(tagName); |
| node.contentEditable = true; |
| node.innerHTML = markup; |
| return node; |
| } |
| |
| function testPasteSelection(tagName, originalMarkup1, originalMarkup2, expected) { |
| var node1 = createEditable(document1, tagName, originalMarkup1); |
| var node2 = createEditable(document2, tagName, originalMarkup2); |
| document1.body.appendChild(node1); |
| document2.body.appendChild(node2); |
| |
| node1.focus(); |
| document1.execCommand("SelectAll", false); |
| node2.focus(); |
| testRunner.execCommand("MoveToEndOfLine", ''); |
| testRunner.execCommand("PasteGlobalSelection", ''); |
| |
| confirmedMarkup = node2.innerHTML; |
| |
| shouldBe("confirmedMarkup", "'" + expected + "'"); |
| } |
| |
| testPasteSelection("div", "Test", "Test", "TestTest"); |
| testPasteSelection("div", "Hello", "Say", "SayHello"); |
| |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |