test_bug1197913.xhtml (2079B)
1 <?xml version="1.0"?> 2 <?xml-stylesheet type="text/css" href="chrome://global/skin"?> 3 <?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?> 4 <!-- 5 https://bugzilla.mozilla.org/show_bug.cgi?id=1197913 6 --> 7 <window title="Mozilla Bug 1197913" 8 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 9 onload="SimpleTest.waitForFocus(nextTest, window)"> 10 <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> 11 <script src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"/> 12 13 14 <!-- test results are displayed in the html:body --> 15 <body xmlns="http://www.w3.org/1999/xhtml"> 16 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1197913" 17 target="_blank">Mozilla Bug 1197913</a> 18 </body> 19 20 <hbox align="center" pack="center"> 21 <menulist> 22 <menupopup> 23 <menuitem label="Car" /> 24 <menuitem label="Taxi" id="target" /> 25 <menuitem label="Bus" /> 26 </menupopup> 27 </menulist> 28 </hbox> 29 <!-- test code goes here --> 30 <script type="application/javascript"> 31 <![CDATA[ 32 SimpleTest.waitForExplicitFinish(); 33 34 let menulist = document.getElementsByTagName("menulist")[0]; 35 let menuitem = document.getElementById("target"); 36 37 function onDOMMenuItemActive(e) { 38 menuitem.removeEventListener("DOMMenuItemActive", onDOMMenuItemActive); 39 40 synthesizeMouse(menuitem, 10, 1, { type: "mousemove" }); 41 synthesizeMouse(menuitem, -1, -1, { type: "mousemove" }); 42 43 setTimeout(() => { 44 ok(menuitem.getAttribute("_moz-menuactive"), "Should be active"); 45 SimpleTest.finish(); 46 }); 47 } 48 49 function onPopupShown(e) { 50 menulist.removeEventListener("popupshown", onPopupShown); 51 menuitem.addEventListener("DOMMenuItemActive", onDOMMenuItemActive); 52 synthesizeMouse(menuitem, 10, 1, { type: "mousemove" }); 53 synthesizeMouse(menuitem, 11, 1, { type: "mousemove" }); 54 } 55 56 function nextTest(e) { 57 menulist.addEventListener("popupshown", onPopupShown); 58 synthesizeMouseAtCenter(menulist, {}); 59 } 60 61 ]]> 62 </script> 63 </window>