1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/toolkit/content/tests/chrome/test_bug792324.xul Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,75 @@ 1.4 +<?xml version="1.0"?> 1.5 +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> 1.6 +<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?> 1.7 +<!-- 1.8 +https://bugzilla.mozilla.org/show_bug.cgi?id=792324 1.9 +--> 1.10 +<window title="Mozilla Bug 792324" 1.11 + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 1.12 + 1.13 + <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> 1.14 + <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"/> 1.15 +<body xmlns="http://www.w3.org/1999/xhtml"> 1.16 + <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=792324">Mozilla Bug 792324</a> 1.17 + 1.18 + <p id="display"></p> 1.19 +<div id="content" style="display: none"> 1.20 +</div> 1.21 +</body> 1.22 + 1.23 +<panel id="panel-1"> 1.24 + <button label="just a normal button"/> 1.25 + <button id="button-1" 1.26 + accesskey="X" 1.27 + oncommand="clicked(event)" 1.28 + label="Button in panel 1" 1.29 + /> 1.30 +</panel> 1.31 + 1.32 +<panel id="panel-2"> 1.33 + <button label="just a normal button"/> 1.34 + <button id="button-2" 1.35 + accesskey="X" 1.36 + oncommand="clicked(event)" 1.37 + label="Button in panel 2" 1.38 + /> 1.39 +</panel> 1.40 + 1.41 +<script class="testbody" type="application/javascript;version=1.7"><![CDATA[ 1.42 + 1.43 +/** Test for Bug 792324 **/ 1.44 +let after_click; 1.45 + 1.46 +function clicked(event) { 1.47 + after_click(event); 1.48 +} 1.49 + 1.50 +function checkAccessKeyOnPanel(panelid, buttonid, cb) { 1.51 + let panel = document.getElementById(panelid); 1.52 + panel.addEventListener("popupshown", function onpopupshown() { 1.53 + panel.removeEventListener("popupshown", onpopupshown); 1.54 + panel.firstChild.focus(); 1.55 + after_click = function(event) { 1.56 + is(event.target.id, buttonid, "Accesskey was directed to the button '" + buttonid + "'"); 1.57 + panel.hidePopup(); 1.58 + cb(); 1.59 + } 1.60 + synthesizeKey("X", {}); 1.61 + }); 1.62 + panel.openPopup(null, "", 100, 100, false, false); 1.63 +} 1.64 + 1.65 +function test() { 1.66 + checkAccessKeyOnPanel("panel-1", "button-1", function() { 1.67 + checkAccessKeyOnPanel("panel-2", "button-2", function() { 1.68 + SimpleTest.finish(); 1.69 + }); 1.70 + }); 1.71 +} 1.72 + 1.73 +SimpleTest.waitForExplicitFinish(); 1.74 +SimpleTest.waitForFocus(test, window); 1.75 + 1.76 +]]></script> 1.77 + 1.78 +</window>