mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Backing out bug 416893 because tree was closed.
This commit is contained in:
parent
fb7ae9065f
commit
7d72b6740d
@ -177,6 +177,7 @@ nsRoleMapEntry nsARIAMap::gWAIRoleMap[] =
|
|||||||
// Manually map EXT_STATE_SUPPORTS_AUTOCOMPLETION aria-autocomplete
|
// Manually map EXT_STATE_SUPPORTS_AUTOCOMPLETION aria-autocomplete
|
||||||
{&nsAccessibilityAtoms::aria_autocomplete, "list", nsIAccessibleStates::STATE_HASPOPUP},
|
{&nsAccessibilityAtoms::aria_autocomplete, "list", nsIAccessibleStates::STATE_HASPOPUP},
|
||||||
{&nsAccessibilityAtoms::aria_autocomplete, "both", nsIAccessibleStates::STATE_HASPOPUP},
|
{&nsAccessibilityAtoms::aria_autocomplete, "both", nsIAccessibleStates::STATE_HASPOPUP},
|
||||||
|
{&nsAccessibilityAtoms::aria_secret, kBoolState, nsIAccessibleStates::STATE_PROTECTED},
|
||||||
{&nsAccessibilityAtoms::aria_disabled, kBoolState, nsIAccessibleStates::STATE_UNAVAILABLE},
|
{&nsAccessibilityAtoms::aria_disabled, kBoolState, nsIAccessibleStates::STATE_UNAVAILABLE},
|
||||||
{&nsAccessibilityAtoms::aria_readonly, kBoolState, nsIAccessibleStates::STATE_READONLY}, kEndEntry},
|
{&nsAccessibilityAtoms::aria_readonly, kBoolState, nsIAccessibleStates::STATE_READONLY}, kEndEntry},
|
||||||
{"toolbar", nsIAccessibleRole::ROLE_TOOLBAR, eNameLabelOrTitle, eNoValue, kNoReqStates,
|
{"toolbar", nsIAccessibleRole::ROLE_TOOLBAR, eNameLabelOrTitle, eNoValue, kNoReqStates,
|
||||||
|
@ -211,6 +211,7 @@ ACCESSIBILITY_ATOM(aria_pressed, "aria-pressed")
|
|||||||
ACCESSIBILITY_ATOM(aria_readonly, "aria-readonly")
|
ACCESSIBILITY_ATOM(aria_readonly, "aria-readonly")
|
||||||
ACCESSIBILITY_ATOM(aria_relevant, "aria-relevant")
|
ACCESSIBILITY_ATOM(aria_relevant, "aria-relevant")
|
||||||
ACCESSIBILITY_ATOM(aria_required, "aria-required")
|
ACCESSIBILITY_ATOM(aria_required, "aria-required")
|
||||||
|
ACCESSIBILITY_ATOM(aria_secret, "aria-secret")
|
||||||
ACCESSIBILITY_ATOM(aria_selected, "aria-selected")
|
ACCESSIBILITY_ATOM(aria_selected, "aria-selected")
|
||||||
ACCESSIBILITY_ATOM(aria_setsize, "aria-setsize")
|
ACCESSIBILITY_ATOM(aria_setsize, "aria-setsize")
|
||||||
ACCESSIBILITY_ATOM(aria_sort, "aria-sort")
|
ACCESSIBILITY_ATOM(aria_sort, "aria-sort")
|
||||||
|
@ -1948,7 +1948,15 @@ NS_IMETHODIMP nsAccessible::GetFinalRole(PRUint32 *aRole)
|
|||||||
|
|
||||||
// These unfortunate exceptions don't fit into the ARIA table
|
// These unfortunate exceptions don't fit into the ARIA table
|
||||||
// This is where the nsIAccessible role depends on both the role and ARIA state
|
// This is where the nsIAccessible role depends on both the role and ARIA state
|
||||||
if (*aRole == nsIAccessibleRole::ROLE_PUSHBUTTON) {
|
if (*aRole == nsIAccessibleRole::ROLE_ENTRY) {
|
||||||
|
nsCOMPtr<nsIContent> content = do_QueryInterface(mDOMNode);
|
||||||
|
if (content && content->AttrValueIs(kNameSpaceID_None, nsAccessibilityAtoms::aria_secret,
|
||||||
|
nsAccessibilityAtoms::_true, eCaseMatters)) {
|
||||||
|
// For entry field with aria-secret="true"
|
||||||
|
*aRole = nsIAccessibleRole::ROLE_PASSWORD_TEXT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (*aRole == nsIAccessibleRole::ROLE_PUSHBUTTON) {
|
||||||
nsCOMPtr<nsIContent> content = do_QueryInterface(mDOMNode);
|
nsCOMPtr<nsIContent> content = do_QueryInterface(mDOMNode);
|
||||||
if (content) {
|
if (content) {
|
||||||
if (content->HasAttr(kNameSpaceID_None, nsAccessibilityAtoms::aria_pressed)) {
|
if (content->HasAttr(kNameSpaceID_None, nsAccessibilityAtoms::aria_pressed)) {
|
||||||
|
@ -344,6 +344,7 @@ nsHyperTextAccessible::GetPosAndText(PRInt32& aStartOffset, PRInt32& aEndOffset,
|
|||||||
PRInt32 startOffset = aStartOffset;
|
PRInt32 startOffset = aStartOffset;
|
||||||
PRInt32 endOffset = aEndOffset;
|
PRInt32 endOffset = aEndOffset;
|
||||||
// XXX this prevents text interface usage on <input type="password">
|
// XXX this prevents text interface usage on <input type="password">
|
||||||
|
// but work is needed on aria-secret (which may be removed)
|
||||||
PRBool isPassword = (Role(this) == nsIAccessibleRole::ROLE_PASSWORD_TEXT);
|
PRBool isPassword = (Role(this) == nsIAccessibleRole::ROLE_PASSWORD_TEXT);
|
||||||
|
|
||||||
// Clear out parameters and set up loop
|
// Clear out parameters and set up loop
|
||||||
|
Loading…
Reference in New Issue
Block a user