bug977003_inner_2.html (2644B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=977003 5 --> 6 <head> 7 <meta charset="utf-8"> 8 <title>Test for Bug 977003</title> 9 <meta name="author" content="Maksim Lebedev" /> 10 <script src="/tests/SimpleTest/SimpleTest.js"></script> 11 <script src="/tests/SimpleTest/EventUtils.js"></script> 12 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 13 <style> 14 #target, #listener { background: yellow; } 15 </style> 16 <script type="application/javascript"> 17 var target = undefined; 18 var listener = undefined; 19 var test_down_got = false; 20 var test_listener = false; 21 22 function TargetDownHandler(event) { 23 logger("Target receive event: " + event.type); 24 logger("Send setPointerCapture to listener"); 25 listener.setPointerCapture(event.pointerId); 26 logger("Send releasePointerCapture from listener"); 27 listener.releasePointerCapture(event.pointerId); 28 logger("set/release was executed"); 29 test_down_got = true; 30 } 31 function ListenerHandler(event) { 32 logger("Receive event on Listener: " + event.type); 33 test_listener = true; 34 } 35 function logger(message) { 36 console.log(message); 37 var log = document.getElementById('log'); 38 log.innerHTML = message + "<br>" + log.innerHTML; 39 } 40 41 function prepareTest() { 42 SimpleTest.executeSoon(executeTest); 43 } 44 function executeTest() 45 { 46 logger("executeTest"); 47 target = document.getElementById("target"); 48 listener = document.getElementById("listener"); 49 target.addEventListener("pointerdown", TargetDownHandler); 50 listener.addEventListener("gotpointercapture", ListenerHandler); 51 listener.addEventListener("lostpointercapture", ListenerHandler); 52 var rect = target.getBoundingClientRect(); 53 synthesizeMouse(target, rect.width/2, rect.height/2, {type: "mousedown"}); 54 synthesizeMouse(target, rect.width/2, rect.height/2, {type: "mouseup"}); 55 finishTest(); 56 } 57 function finishTest() { 58 parent.is(test_down_got, true, "Part 2: pointerdown event should be received by target"); 59 parent.is(test_listener, false, "Part 2: listener should not receive any events"); 60 logger("finishTest"); 61 parent.finishTest(); 62 } 63 </script> 64 </head> 65 <body onload="prepareTest()"> 66 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=977003">Mozilla Bug 977003 Test 2</a> 67 <p id="display"></p> 68 <div id="content" style="display: none"> 69 </div> 70 <div id="listener">div id=listener</div> 71 <div id="target">div id=target</div> 72 <pre id="log"> 73 </pre> 74 </body> 75 </html>