91 lines
2.5 KiB
HTML
91 lines
2.5 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<style>
|
|
#dropTarget { text-align: center; display: table-cell; vertical-align: middle }
|
|
#dropTarget {width: 256px; height: 256px; border: 1px dashed}
|
|
</style>
|
|
<script>
|
|
var dropTarget;
|
|
var dropEffectElem;
|
|
var consoleElm;
|
|
var event;
|
|
|
|
window.onload = function()
|
|
{
|
|
dropTarget = document.getElementById("dropTarget");
|
|
dropEffectElem = document.getElementById("dropEffect");
|
|
consoleElm = document.getElementById("console");
|
|
|
|
if (!dropTarget || !dropEffectElem || !consoleElm)
|
|
return;
|
|
|
|
dropEffectElem.onclick = changeDropZone;
|
|
changeDropZone();
|
|
dropTarget.ondrop = drop;
|
|
|
|
runTest();
|
|
}
|
|
|
|
function changeDropZone()
|
|
{
|
|
dropTarget.setAttribute("webkitdropzone", dropEffectElem.options[dropEffectElem.selectedIndex].value + " file:text/html");
|
|
}
|
|
|
|
function printDropEvent(e)
|
|
{
|
|
chosenDropEffect = dropEffectElem.options[dropEffectElem.selectedIndex].value;
|
|
debug("Received drop event when chosenDropEffect is " + chosenDropEffect);
|
|
}
|
|
|
|
function runTest()
|
|
{
|
|
if (!window.eventSender)
|
|
return;
|
|
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
var endX = dropTarget.offsetLeft + 10;
|
|
var endY = dropTarget.offsetTop + dropTarget.offsetHeight / 2
|
|
|
|
var numEffects = dropEffectElem.options.length;
|
|
|
|
for (var j = 0; j < numEffects; ++j) {
|
|
dropEffectElem.options[j].selected = true;
|
|
changeDropZone();
|
|
|
|
eventSender.beginDragWithFiles(["resources/file-for-prevent-drag-to-navigate.html"]);
|
|
eventSender.mouseMoveTo(endX, endY);
|
|
eventSender.mouseUp();
|
|
}
|
|
|
|
var testContainer = document.getElementById("test-container");
|
|
if (testContainer)
|
|
document.body.removeChild(testContainer);
|
|
debug('<br /><span class="pass">TEST COMPLETE</span>');
|
|
}
|
|
</script>
|
|
<script src="resources/dropzone.js"></script>
|
|
</head>
|
|
<body>
|
|
<p id="description"></p>
|
|
<div id="test-container">
|
|
<div id="dropTarget">Drop the file onto me.<br/><br/>
|
|
<label for="dropEffect">Expects dropEffect</label> <select id="dropEffect">
|
|
<option value="copy">Copy</option>
|
|
<option value="move">Move</option>
|
|
<option value="link">Link</option>
|
|
<option value="dummy">Nonexistent (Dummy) Effect should be converted to copy</option>
|
|
</select>
|
|
</div>
|
|
<hr/>
|
|
<hr/>
|
|
</div>
|
|
<div id="console"></div>
|
|
<script>
|
|
description("This test checks that drag-and-drop support works with files.<br/>");
|
|
</script>
|
|
</body>
|
|
</html>
|