Bug 263843 - AX: The isolated tree doesn't update when the name attribute changes
Summary: AX: The isolated tree doesn't update when the name attribute changes
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Tyler Wilcock
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-10-28 23:46 PDT by Tyler Wilcock
Modified: 2023-10-29 14:27 PDT (History)
10 users (show)

See Also:


Attachments
Patch (20.19 KB, patch)
2023-10-29 00:10 PDT, Tyler Wilcock
no flags Details | Formatted Diff | Diff
Patch (20.26 KB, patch)
2023-10-29 09:45 PDT, Tyler Wilcock
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tyler Wilcock 2023-10-28 23:46:03 PDT
We use the name attribute for the AXRadioGroupSearchKey, which allows clients to find the next / previous distinct radiogroup. By not updating AXPropertyName::NameAttribute, this search query can return incorrect results after dynamic changes.
Comment 1 Radar WebKit Bug Importer 2023-10-28 23:46:12 PDT
<rdar://problem/117641685>
Comment 2 Tyler Wilcock 2023-10-29 00:10:08 PDT
Created attachment 468396 [details]
Patch
Comment 3 chris fleizach 2023-10-29 08:08:15 PDT
Comment on attachment 468396 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=468396&action=review

> Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:592
> +            else

Does storing an empty string recreate the issue we tried to fix by not storing default values?
Comment 4 Tyler Wilcock 2023-10-29 09:45:29 PDT
Created attachment 468401 [details]
Patch
Comment 5 Tyler Wilcock 2023-10-29 09:48:21 PDT
(In reply to chris fleizach from comment #3)
> Comment on attachment 468396 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=468396&action=review
> 
> > Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:592
> > +            else
> 
> Does storing an empty string recreate the issue we tried to fix by not
> storing default values?
Uploaded a new version of the patch that removes std::optional from the method signature of nameAttribute(), obviating the need to store an empty string here (which would've resulted in AXPropertyName::NameAttribute from being removed from the map rather than storing an empty string per AXIsolatedObject::setProperty).
Comment 6 EWS 2023-10-29 14:27:04 PDT
Committed 269912@main (2ab054fd990f): <https://commits.webkit.org/269912@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 468401 [details].