Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update accessibility subtree when an event listener is removed #33991

Merged
merged 1 commit into from May 9, 2022

Conversation

chromium-wpt-export-bot
Copy link
Collaborator

If an object was included in the accessibility tree solely due to an
event listener which was just removed, that object will be marked as
dirty and subsequently as ignored. When BlinkAXTreeSource::GetChildren
is then called due to serialization of updates and events, the parent of
that now-ignored object will have a child it should not and a DCHECK
will fail.

This commit solves that problem by calling ChildrenChangedOnAncestorOf
if the event listener was removed on an existing AXObject. Doing so
causes the accessibility tree to be updated prior to serialization of
updates and events. It includes an additional change and test from
crrev.com/c/3608668.

AX-Relnotes: N/A

Bug: 1319933
Change-Id: Ibb4b78d480d940c8274db75b3739cda0e253933e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3614009
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joanmarie Diggs <jdiggs@igalia.com>
Cr-Commit-Position: refs/heads/main@{#997215}

If an object was included in the accessibility tree solely due to an
event listener which was just removed, that object will be marked as
dirty and subsequently as ignored. When BlinkAXTreeSource::GetChildren
is then called due to serialization of updates and events, the parent of
that now-ignored object will have a child it should not and a DCHECK
will fail.

This commit solves that problem by calling ChildrenChangedOnAncestorOf
if the event listener was removed on an existing AXObject. Doing so
causes the accessibility tree to be updated prior to serialization of
updates and events. It includes an additional change and test from
crrev.com/c/3608668.

AX-Relnotes: N/A

Bug: 1319933
Change-Id: Ibb4b78d480d940c8274db75b3739cda0e253933e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3614009
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joanmarie Diggs <jdiggs@igalia.com>
Cr-Commit-Position: refs/heads/main@{#997215}
Copy link
Collaborator

@wpt-pr-bot wpt-pr-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Chromium project.

@chromium-wpt-export-bot chromium-wpt-export-bot merged commit 31d0d36 into master May 9, 2022
@chromium-wpt-export-bot chromium-wpt-export-bot deleted the chromium-export-753632c02f branch May 9, 2022 10:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants