<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=500885 --> <head> <title>Test for Bug 500885</title> <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <script type="text/javascript" src="/tests/SimpleTest/EventUtils.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=500885">Mozilla Bug 500885</a> <div> <input id="file" type="file" /> </div> <script type="text/javascript"> var MockFilePicker = SpecialPowers.MockFilePicker; MockFilePicker.init(window); MockFilePicker.returnValue = MockFilePicker.returnOK; function test() { // SpecialPowers.DOMWindowUtils doesn't appear to fire mouseEvents correctly var wu = SpecialPowers.getDOMWindowUtils(window); try { var domActivateEvents; var fileInput = document.getElementById("file"); var rect = fileInput.getBoundingClientRect(); fileInput.addEventListener ("DOMActivate", function (e) { ok("detail" in e, "DOMActivate should have .detail"); is(e.detail, 1, ".detail should be 1"); domActivateEvents++; }, false); domActivateEvents = 0; wu.sendMouseEvent("mousedown", rect.left + 5, rect.top + 5, 0, 1, 0); wu.sendMouseEvent("mouseup", rect.left + 5, rect.top + 5, 0, 1, 0); is(domActivateEvents, 1, "click on button should fire 1 DOMActivate event"); domActivateEvents = 0; wu.sendMouseEvent("mousedown", rect.right - 5, rect.top + 5, 0, 1, 0); wu.sendMouseEvent("mouseup", rect.right - 5, rect.top + 5, 0, 1, 0); is(domActivateEvents, 1, "click on text field should fire 1 DOMActivate event"); } finally { SimpleTest.executeSoon(function() { MockFilePicker.cleanup(); SimpleTest.finish(); }); } } SimpleTest.waitForExplicitFinish(); SimpleTest.waitForFocus(test); </script> </body> </html>