mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 742659 - move nsARIAMap::UniversalStatesFor to aria namespace, r=tbsaunde, f=surkov
This commit is contained in:
parent
1a6a842c35
commit
db58cb939f
@ -582,7 +582,7 @@ nsRoleMapEntry nsARIAMap::gEmptyRoleMap = {
|
||||
* The following state rules are applied to any accessible element,
|
||||
* whether there is an ARIA role or not:
|
||||
*/
|
||||
EStateRule nsARIAMap::gWAIUnivStateMap[] = {
|
||||
static const EStateRule sWAIUnivStateMap[] = {
|
||||
eARIABusy,
|
||||
eARIADisabled,
|
||||
eARIAExpanded, // Currently under spec review but precedent exists
|
||||
@ -635,7 +635,8 @@ nsAttributeCharacteristics nsARIAMap::gWAIUnivAttrMap[] = {
|
||||
{&nsGkAtoms::aria_valuetext, ATTR_BYPASSOBJ }
|
||||
};
|
||||
|
||||
PRUint32 nsARIAMap::gWAIUnivAttrMapLength = NS_ARRAY_LENGTH(nsARIAMap::gWAIUnivAttrMap);
|
||||
PRUint32
|
||||
nsARIAMap::gWAIUnivAttrMapLength = NS_ARRAY_LENGTH(nsARIAMap::gWAIUnivAttrMap);
|
||||
|
||||
nsRoleMapEntry*
|
||||
aria::GetRoleMap(nsINode* aNode)
|
||||
@ -672,3 +673,14 @@ aria::GetRoleMap(nsINode* aNode)
|
||||
// To ensure an accessible object is created
|
||||
return &sLandmarkRoleMap;
|
||||
}
|
||||
|
||||
PRUint64
|
||||
aria::UniversalStatesFor(mozilla::dom::Element* aElement)
|
||||
{
|
||||
PRUint64 state = 0;
|
||||
PRUint32 index = 0;
|
||||
while (MapToState(sWAIUnivStateMap[index], aElement, &state))
|
||||
index++;
|
||||
|
||||
return state;
|
||||
}
|
||||
|
@ -199,32 +199,11 @@ struct nsARIAMap
|
||||
*/
|
||||
static nsRoleMapEntry gEmptyRoleMap;
|
||||
|
||||
/**
|
||||
* State map of ARIA states applied to any accessible not depending on
|
||||
* the role.
|
||||
*/
|
||||
static mozilla::a11y::aria::EStateRule gWAIUnivStateMap[];
|
||||
|
||||
/**
|
||||
* Map of attribute to attribute characteristics.
|
||||
*/
|
||||
static nsAttributeCharacteristics gWAIUnivAttrMap[];
|
||||
static PRUint32 gWAIUnivAttrMapLength;
|
||||
|
||||
/**
|
||||
* Return accessible state from ARIA universal states applied to the given
|
||||
* element.
|
||||
*/
|
||||
static PRUint64 UniversalStatesFor(mozilla::dom::Element* aElement)
|
||||
{
|
||||
PRUint64 state = 0;
|
||||
PRUint32 index = 0;
|
||||
while (mozilla::a11y::aria::MapToState(gWAIUnivStateMap[index],
|
||||
aElement, &state))
|
||||
index++;
|
||||
|
||||
return state;
|
||||
}
|
||||
};
|
||||
|
||||
namespace mozilla {
|
||||
@ -241,6 +220,12 @@ namespace aria {
|
||||
*/
|
||||
nsRoleMapEntry* GetRoleMap(nsINode* aNode);
|
||||
|
||||
/**
|
||||
* Return accessible state from ARIA universal states applied to the given
|
||||
* element.
|
||||
*/
|
||||
PRUint64 UniversalStatesFor(mozilla::dom::Element* aElement);
|
||||
|
||||
} // namespace aria
|
||||
} // namespace a11y
|
||||
} // namespace mozilla
|
||||
|
@ -1533,7 +1533,7 @@ Accessible::ApplyARIAState(PRUint64* aState) const
|
||||
dom::Element* element = mContent->AsElement();
|
||||
|
||||
// Test for universal states first
|
||||
*aState |= nsARIAMap::UniversalStatesFor(element);
|
||||
*aState |= aria::UniversalStatesFor(element);
|
||||
|
||||
if (mRoleMapEntry) {
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user