Closed
Bug 1572325
Opened 5 years ago
Closed 5 years ago
Relocated accessibles are incorrectly removed along with their owning accessible
Categories
(Core :: Disability Access APIs, defect, P2)
Core
Disability Access APIs
Tracking
()
RESOLVED
DUPLICATE
of bug 1455416
People
(Reporter: Jamie, Unassigned)
References
(Blocks 1 open bug)
Details
Discovered this while figuring out bug 1572317.
STR:
- Open this test case:
data:text/html,<div id="combobox" role="combobox" aria-owns="listbox"></div><div id="listbox" role="listbox"></div><button onClick="combobox.hidden = true;">Break things</button>
- Observe that in the accessibility tree, there is an editcombobox containing a combobox list.
- Press the "Break things" button.
- In the accessibility tree, examine the children of the document.
- Expected: There should be a combobox list (or a listbox?) as well as the "Break things" button.
- Actual: There's only the button, no combobox list/listbox.
When we remove an Accessible, we seem to remove all of its descendants, even the owned ones. There is code in ContentRemoved and UncacheChildrenInSubtree to clean up mARIAOwnsHash, but it doesn't put the children back. We do have code to put children back, DocAccessible::PutChildrenBack, which we use when aria-owns changes. We should do something similar for removals too.
Reporter | ||
Updated•5 years ago
|
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•