Fission a11y: Expose COM proxy for embedded OOP iframe document as child of embedder OuterDocAccessible
Categories
(Core :: Disability Access APIs, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox69 | --- | fixed |
People
(Reporter: Jamie, Assigned: Jamie)
References
Details
Attachments
(1 file)
In order to expose an OOP iframe document accessible as a child of the embedder iframe accessible via COM, the embedder process needs a COM proxy for the iframe document accessible. Bug 1543298 exposes the embedded iframe document COM proxy on the embedder's BrowserBridgeChild. This COM proxy must be returned to clients when they query for the child of the iframe accessible.
This will probably require Windows specific overrides in one of two places:
- OuterDocAccessible::ChildCount and OuterDocAccessible::GetChildAt. However, since this returns Accessible*, this would also require a new AccessibleWrap subclass similar to ProxyAccessibleWrap which overrides GetNativeInterface to return the iframe document COM proxy. The question is whether it is okay to create that wrapper each time the client requests a child, or failing that, what would initially create the wrapper object and what would keep it alive.
- IAccessible::accChildCount, IAccessible::get_accChild and IAccessible::accNavigate. We'd also need to make QI to IEnumVARIANT return E_NOINTERFACE for the iframe accessible. This would either require a new OuterDocAccessibleWrap or adding conditions to AccessibleWrap.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
Windows accessibility clients talk directly to the content process via COM.
In order to expose an OOP iframe document accessible as a child of the embedder iframe accessible via COM, the embedder process needs a COM proxy for the iframe document accessible.
This is exposed on the embedder's BrowserBridgeChild, so we can use this when a client asks for the child of the OuterDocAccessible.
Pushed by jteh@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bb49389d34ba For out-of-process iframes on Windows, return the embedded document as a child of the OuterDocAccessible. r=eeejay
Comment 3•5 years ago
|
||
bugherder |
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Description
•