Closed Bug 504985 Opened 15 years ago Closed 15 years ago

get_accRole, if returning a role string, includes namespace URI withthe actual role, effective June 9, 2009

Categories

(Core :: Disability Access APIs, defect)

x86
Windows XP
defect
Not set
major

Tracking

()

RESOLVED FIXED

People

(Reporter: MarcoZ, Assigned: surkov)

References

Details

(Keywords: access, regression)

Attachments

(1 file)

Found by the GW Micro folks. Our check here:
http://mxr.mozilla.org/mozilla-central/source/accessible/src/msaa/nsAccessibleWrap.cpp#522
no longer evaluates to true, so each H1 or other element now gets the namespace URI included as part of the role string.

This breaks at least Window-Eyes, possibly others.

This was introduced in the Minefield 3.6a1pre builds starting June 9, 2009.
CC'ing JST since he was the reviewer of bug 259385, and smaug for hopes of some input. Out code hasn't changed since the Firefox 3.0 days, and according to Surkov's investigation, the code in nsNodeInfo::GetNameSpaceUri hasn't changed either.
Attached patch patchSplinter Review
Ok, it sounds all we can is to follow our comment "Only append name space if different from that of current document."
Assignee: nobody → surkov.alexander
Status: NEW → ASSIGNED
Attachment #389433 - Flags: review?(marco.zehe)
Attachment #389433 - Flags: review?(bolterbugz)
Comment on attachment 389433 [details] [diff] [review]
patch

Yep this restores Window-Eyes functionality. Thanks!
Attachment #389433 - Flags: review?(marco.zehe) → review+
Attachment #389433 - Flags: review?(bolterbugz) → review+
Comment on attachment 389433 [details] [diff] [review]
patch

r=me, looks good.

>-      if (!nameSpaceURI.IsEmpty()) {
>-        // Only append name space if different from that of current document
>+
>+      // Only append name space if different from that of current document.
>+      if (!nodeInfo->NamespaceEquals(document->GetDefaultNamespaceID())) {
>+        nsAutoString nameSpaceURI;
>+        nodeInfo->GetNamespaceURI(nameSpaceURI);
>         roleString += NS_LITERAL_STRING(", ") + nameSpaceURI;
>       }

Very strange that we had the comment there already, but no check.
(In reply to comment #5)

> Very strange that we had the comment there already, but no check.

This comment was valid for HTML content at least. Possibly they didn't keep in mind another namespaces that time. Possibly that was valid for XUL as well, I don't know.
landed on 1.9.2 - http://hg.mozilla.org/mozilla-central/rev/eb7644ffddff
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: