Bug 1149118 - Expose radio group with the correct role on OS X, r=surkov

This commit is contained in:
Marco Zehe 2015-03-30 15:37:09 +02:00
parent d7048c7469
commit b48c48870d
8 changed files with 25 additions and 6 deletions

View File

@ -478,7 +478,7 @@ static nsRoleMapEntry sWAIRoleMaps[] =
},
{ // radiogroup
&nsGkAtoms::radiogroup,
roles::GROUPING,
roles::RADIO_GROUP,
kUseMapRole,
eNoValue,
eNoAction,

View File

@ -976,7 +976,12 @@ enum Role {
*/
MATHML_STACK_LINE = 167,
LAST_ROLE = MATHML_STACK_LINE
/**
* A group containing radio buttons
*/
RADIO_GROUP = 168,
LAST_ROLE = RADIO_GROUP
};
} // namespace role

View File

@ -1359,3 +1359,11 @@ ROLE(MATHML_STACK_LINE,
0,
IA2_ROLE_UNKNOWN,
eNoNameRule)
ROLE(RADIO_GROUP,
"grouping",
ATK_ROLE_PANEL,
NSAccessibilityRadioGroupRole,
ROLE_SYSTEM_GROUPING,
ROLE_SYSTEM_GROUPING,
eNoNameRule)

View File

@ -8,7 +8,7 @@
/**
* Defines cross platform (Gecko) roles.
*/
[scriptable, uuid(55581ec3-ba6e-4805-8108-260ed34cdcbb)]
[scriptable, uuid(00f9e831-3198-40b7-9186-5251474d4d7a)]
interface nsIAccessibleRole : nsISupports
{
/**
@ -969,4 +969,9 @@ interface nsIAccessibleRole : nsISupports
* A MathML line in a stack (msline in MathML).
*/
const unsigned long ROLE_MATHML_STACK_LINE = 167;
/**
* A group containing radio buttons
*/
const unsigned long ROLE_RADIO_GROUP = 168;
};

View File

@ -96,6 +96,7 @@ const ROLE_PROGRESSBAR = nsIAccessibleRole.ROLE_PROGRESSBAR;
const ROLE_PROPERTYPAGE = nsIAccessibleRole.ROLE_PROPERTYPAGE;
const ROLE_PUSHBUTTON = nsIAccessibleRole.ROLE_PUSHBUTTON;
const ROLE_RADIOBUTTON = nsIAccessibleRole.ROLE_RADIOBUTTON;
const ROLE_RADIO_GROUP = nsIAccessibleRole.ROLE_RADIO_GROUP;
const ROLE_RADIO_MENU_ITEM = nsIAccessibleRole.ROLE_RADIO_MENU_ITEM;
const ROLE_RICH_OPTION = nsIAccessibleRole.ROLE_RICH_OPTION;
const ROLE_ROW = nsIAccessibleRole.ROLE_ROW;

View File

@ -51,7 +51,7 @@
testRole("aria_presentation", ROLE_TEXT_CONTAINER); // weak role
testRole("aria_progressbar", ROLE_PROGRESSBAR);
testRole("aria_radio", ROLE_RADIOBUTTON);
testRole("aria_radiogroup", ROLE_GROUPING);
testRole("aria_radiogroup", ROLE_RADIO_GROUP);
testRole("aria_region", ROLE_PANE);
testRole("aria_row", ROLE_ROW);
testRole("aria_rowheader", ROLE_ROWHEADER);

View File

@ -39,7 +39,7 @@
// radiogroup
accTree = {
role: ROLE_GROUPING,
role: ROLE_RADIO_GROUP,
children: [
{
role: ROLE_RADIOBUTTON,

View File

@ -472,7 +472,7 @@ XULRadioGroupAccessible::
role
XULRadioGroupAccessible::NativeRole()
{
return roles::GROUPING;
return roles::RADIO_GROUP;
}
uint64_t