test_bug591815.html (1981B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=591815 5 --> 6 <head> 7 <title>Test for Bug 591815</title> 8 <script src="/tests/SimpleTest/SimpleTest.js"></script> 9 <script src="/tests/SimpleTest/EventUtils.js"></script> 10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 11 </head> 12 <body onload="setTimeout(runTest, 0)"> 13 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=591815">Mozilla Bug 591815</a> 14 <p id="display"></p> 15 <div id="content"> 16 <div id="wrapper"> 17 <!-- 20x20 of red --> 18 <img id="image" ondragstart="fail();" 19 src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAAG0lEQVR42mP8z0A%2BYKJA76jmUc2jmkc1U0EzACKcASfOgGoMAAAAAElFTkSuQmCC"/> 20 </div> 21 </div> 22 <pre id="test"> 23 24 <script type="application/javascript"> 25 26 /** Test for Bug 591815 */ 27 28 SimpleTest.waitForExplicitFinish(); 29 30 function fail() { 31 ok(false, "drag started but should not have"); 32 } 33 34 function runTest() { 35 var image = document.getElementById("image"); 36 var wrapper = document.getElementById("wrapper"); 37 var preventDefault = function(event) { 38 event.preventDefault(); 39 }; 40 wrapper.addEventListener('mousedown', preventDefault); 41 42 synthesizeMouse(image, 3, 3, { type: "mousedown"}); 43 synthesizeMouse(image, 53, 53, { type: "mousemove"}); 44 synthesizeMouse(image, 53, 53, { type: "mouseup"}); 45 46 wrapper.removeEventListener('mousedown', preventDefault); 47 48 var relocateElementAndPreventDefault = function(event) { 49 document.body.appendChild(wrapper); 50 event.preventDefault(); 51 } 52 wrapper.addEventListener('mousedown', relocateElementAndPreventDefault); 53 54 synthesizeMouse(image, 3, 3, { type: "mousedown"}); 55 synthesizeMouse(image, 53, 53, { type: "mousemove"}); 56 synthesizeMouse(image, 53, 53, { type: "mouseup"}); 57 58 wrapper.removeEventListener('mousedown', relocateElementAndPreventDefault); 59 60 ok(true, "passed the test"); 61 SimpleTest.finish(); 62 } 63 64 </script> 65 </pre> 66 </body> 67 </html>