зеркало из https://github.com/mozilla/gecko-dev.git
72 строки
2.1 KiB
XML
72 строки
2.1 KiB
XML
<?xml version="1.0"?>
|
|
<?xml-stylesheet href="chrome://global/skin"
|
|
type="text/css"?>
|
|
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
|
|
type="text/css"?>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=490879
|
|
-->
|
|
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
|
title="Mozilla Bug 490879" onload="runTest();">
|
|
<script type="application/javascript"
|
|
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
|
|
|
|
<body xmlns="http://www.w3.org/1999/xhtml">
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=490879"
|
|
target="_blank">Mozilla Bug 490879</a>
|
|
<p/>
|
|
<iframe id="i1" width="200" height="100" src="about:blank" /><br />
|
|
<img id="i" src="green.png" />
|
|
<p/>
|
|
<pre id="test">
|
|
</pre>
|
|
</body>
|
|
<script class="testbody" type="application/javascript">
|
|
<![CDATA[
|
|
|
|
function runTest() {
|
|
function verifyContent() {
|
|
const kExpectedImgSpec = "data:image/png;base64,";
|
|
var e = document.getElementById('i1');
|
|
var doc = e.contentDocument;
|
|
is(doc.getElementsByTagName("img")[0].src.substring(0, kExpectedImgSpec.length),
|
|
kExpectedImgSpec, "The pasted image is a base64-encoded data: URI");
|
|
}
|
|
|
|
function pasteInto() {
|
|
var e = document.getElementById('i1');
|
|
var doc = e.contentDocument;
|
|
doc.designMode = "on";
|
|
doc.defaultView.focus();
|
|
var selection = doc.defaultView.getSelection();
|
|
selection.removeAllRanges();
|
|
selection.selectAllChildren(doc.body);
|
|
selection.collapseToEnd();
|
|
doc.execCommand("paste", false, null);
|
|
}
|
|
|
|
function copyToClipBoard() {
|
|
var tmpNode = document.popupNode;
|
|
document.popupNode = document.getElementById("i");
|
|
|
|
const kCmd = "cmd_copyImageContents";
|
|
var controller = top.document.commandDispatcher
|
|
.getControllerForCommand(kCmd);
|
|
ok((controller && controller.isCommandEnabled(kCmd)), "have copy command");
|
|
controller.doCommand(kCmd);
|
|
|
|
document.popupNode = tmpNode;
|
|
}
|
|
|
|
copyToClipBoard();
|
|
pasteInto();
|
|
verifyContent();
|
|
|
|
SimpleTest.finish();
|
|
}
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
]]>
|
|
</script>
|
|
</window>
|