test_bug500885.html (1885B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=500885 5 --> 6 <head> 7 <title>Test for Bug 500885</title> 8 <script src="/tests/SimpleTest/SimpleTest.js"></script> 9 <script src="/tests/SimpleTest/EventUtils.js"></script> 10 <script src="/tests/SimpleTest/paint_listener.js"></script> 11 <script type="text/javascript" src="/tests/gfx/layers/apz/test/mochitest/apz_test_utils.js"></script> 12 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 13 14 </head> 15 <body> 16 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=500885">Mozilla Bug 500885</a> 17 <div> 18 <input id="file" type="file" /> 19 </div> 20 <script type="text/javascript"> 21 22 var MockFilePicker = SpecialPowers.MockFilePicker; 23 MockFilePicker.init(SpecialPowers.wrap(window).browsingContext); 24 MockFilePicker.returnValue = MockFilePicker.returnOK; 25 26 async function test() { 27 try { 28 var domActivateEvents; 29 var fileInput = document.getElementById("file"); 30 var rect = fileInput.getBoundingClientRect(); 31 32 fileInput.addEventListener ("DOMActivate", function (e) { 33 ok("detail" in e, "DOMActivate should have .detail"); 34 is(e.detail, 1, ".detail should be 1"); 35 domActivateEvents++; 36 }); 37 38 fileInput.scrollIntoView({ behaviour: "smooth" }); 39 await promiseApzFlushedRepaints(); 40 41 domActivateEvents = 0; 42 synthesizeMouseAtPoint(rect.left + 5, rect.top + 5, {}); 43 is(domActivateEvents, 1, "click on button should fire 1 DOMActivate event"); 44 45 domActivateEvents = 0; 46 synthesizeMouseAtPoint(rect.right - 5, rect.top + 5, {}); 47 is(domActivateEvents, 1, "click on text field should fire 1 DOMActivate event"); 48 } finally { 49 SimpleTest.executeSoon(function() { 50 MockFilePicker.cleanup(); 51 SimpleTest.finish(); 52 }); 53 } 54 } 55 56 SimpleTest.waitForExplicitFinish(); 57 SimpleTest.waitForFocus(test); 58 59 </script> 60 </body> 61 62 </html>