bug 429666 - Expose ROLE_DOCUMENT for ARIA landmarks that inherit from document, patch by aaronlev, r=me; test by me, r=surkov

This commit is contained in:
Marco Zehe 2008-06-17 08:52:09 +02:00
Родитель cc01790bc7
Коммит c2fb2e4d05
3 изменённых файлов: 53 добавлений и 0 удалений

Просмотреть файл

@ -63,6 +63,7 @@ nsRoleMapEntry nsARIAMap::gWAIRoleMap[] =
{"alert", nsIAccessibleRole::ROLE_ALERT, eNameLabelOrTitle, eNoValue, kNoReqStates, kEndEntry}, {"alert", nsIAccessibleRole::ROLE_ALERT, eNameLabelOrTitle, eNoValue, kNoReqStates, kEndEntry},
{"alertdialog", nsIAccessibleRole::ROLE_ALERT, eNameOkFromChildren, eNoValue, kNoReqStates, kEndEntry}, {"alertdialog", nsIAccessibleRole::ROLE_ALERT, eNameOkFromChildren, eNoValue, kNoReqStates, kEndEntry},
{"application", nsIAccessibleRole::ROLE_APPLICATION, eNameLabelOrTitle, eNoValue, kNoReqStates, kEndEntry}, {"application", nsIAccessibleRole::ROLE_APPLICATION, eNameLabelOrTitle, eNoValue, kNoReqStates, kEndEntry},
{"article", nsIAccessibleRole::ROLE_DOCUMENT, eNameLabelOrTitle, eNoValue, kNoReqStates, kEndEntry},
{"button", nsIAccessibleRole::ROLE_PUSHBUTTON, eNameOkFromChildren, eNoValue, kNoReqStates, {"button", nsIAccessibleRole::ROLE_PUSHBUTTON, eNameOkFromChildren, eNoValue, kNoReqStates,
{&nsAccessibilityAtoms::aria_pressed, kBoolState, nsIAccessibleStates::STATE_PRESSED}, {&nsAccessibilityAtoms::aria_pressed, kBoolState, nsIAccessibleStates::STATE_PRESSED},
{&nsAccessibilityAtoms::aria_pressed, "mixed", nsIAccessibleStates::STATE_MIXED}, kEndEntry}, {&nsAccessibilityAtoms::aria_pressed, "mixed", nsIAccessibleStates::STATE_MIXED}, kEndEntry},

Просмотреть файл

@ -48,6 +48,7 @@ include $(topsrcdir)/config/rules.mk
_TEST_FILES =\ _TEST_FILES =\
moz.png \ moz.png \
test_aria_activedescendant.html \ test_aria_activedescendant.html \
test_aria_role_article.html \
test_bug368835.xul \ test_bug368835.xul \
test_bug420863.html \ test_bug420863.html \
test_groupattrs.xul \ test_groupattrs.xul \

Просмотреть файл

@ -0,0 +1,51 @@
<!DOCTYPE html>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=429666
-->
<head>
<title>Expose ROLE_DOCUMENT for ARIA landmarks that inherit from document chrome tests</title>
<link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css" />
<script type="application/javascript" src="chrome://mochikit/content/MochiKit/packed.js"></script>
<script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<script type="application/javascript">
function doTest()
{
var accRetrieval = Components.classes["@mozilla.org/accessibleRetrieval;1"].
getService(Components.interfaces.nsIAccessibleRetrieval);
// Test article exposed as document
var articleElement = document.getElementById("testArticle");
var articleAcc = null;
try {
articleAcc = accRetrieval.getAccessibleFor(articleElement);
} catch(e) { }
ok(articleAcc, "no accessible for article!");
if (articleAcc) {
is(articleAcc.finalRole,
Components.interfaces.nsIAccessibleRole.ROLE_DOCUMENT,
"Wrong role for article!");
is(articleAcc.name, "Test article", "Wrong name for article!");
}
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
addLoadEvent(doTest);
</script>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=429666">Mozilla Bug 429666</a>
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test">
</pre>
<div id="testArticle" role="article" title="Test article">
<p>This is a paragraph inside the article.</p>
</div>
</body>
</html>