81 lines
3.0 KiB
HTML
81 lines
3.0 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body id="body">
|
|
|
|
<div role="group" id="group" tabindex="0">group</div>
|
|
<div role="button" id="button" tabindex="0">button</div>
|
|
<div role="tab" id="tab" tabindex="0">tab button</div>
|
|
<div role="radio" id="radio" tabindex="0">radio</div>
|
|
<div role="checkbox" id="checkbox" tabindex="0">checkbox</div>
|
|
<div role="menuitem" id="menuitem" tabindex="0">menu item</div>
|
|
<div role="menuitemcheckbox" id="menuitemcheckbox" tabindex="0">menu item checkbox</div>
|
|
<div role="menuitemradio" id="menuitemradio" tabindex="0">menu item radio</div>
|
|
<div role="listitem" id="listitem" tabindex="0">list item</div>
|
|
<div role="button" id="button2" tabindex="0"><div><button id="subbutton"></div></div>
|
|
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
|
|
<script>
|
|
|
|
document.getElementById("body").onmousedown = handlePress;
|
|
|
|
var pressCount = 0;
|
|
var eventSrcElement;
|
|
function handlePress(e) {
|
|
eventSrcElement = e.srcElement;
|
|
|
|
if (pressCount == 0)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('group')");
|
|
else if (pressCount == 1)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('button')");
|
|
else if (pressCount == 2)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('tab')");
|
|
else if (pressCount == 3)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('radio')");
|
|
else if (pressCount == 4)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('checkbox')");
|
|
else if (pressCount == 5)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('menuitem')");
|
|
else if (pressCount == 6)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('menuitemcheckbox')");
|
|
else if (pressCount == 7)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('menuitemradio')");
|
|
else if (pressCount == 8)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('listitem')");
|
|
else if (pressCount == 9)
|
|
shouldBeTrue("eventSrcElement == document.getElementById('subbutton')");
|
|
|
|
pressCount++;
|
|
}
|
|
|
|
description("This tests that when certain control type elements are pressed, a valid event is sent that references the right element.");
|
|
|
|
var items = new Array("group", "button", "tab", "radio", "checkbox", "menuitem", "menuitemcheckbox", "menuitemradio", "listitem", "button2");
|
|
var length = items.length;
|
|
|
|
if (window.accessibilityController) {
|
|
jsTestIsAsync = true;
|
|
// AXPress on Mac is async, let's give it some delay and do it recursively.
|
|
accessibilityPress(0);
|
|
}
|
|
|
|
function accessibilityPress(k) {
|
|
if (k == length)
|
|
finishJSTest();
|
|
|
|
accessibilityController.accessibleElementById(items[k]).press();
|
|
setTimeout(function() {
|
|
accessibilityPress(k+1);
|
|
}, 10);
|
|
}
|
|
|
|
</script>
|
|
|
|
<script src="../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|