Bug 237483 - Fix for <select> elements in isolated tree mode.
Summary: Fix for <select> elements in isolated tree mode.
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Andres Gonzalez
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-03-04 12:53 PST by Andres Gonzalez
Modified: 2022-03-11 19:54 PST (History)
9 users (show)

See Also:


Attachments
Patch (5.88 KB, patch)
2022-03-04 13:07 PST, Andres Gonzalez
no flags Details | Formatted Diff | Diff
Patch (6.64 KB, patch)
2022-03-07 07:10 PST, Andres Gonzalez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andres Gonzalez 2022-03-04 12:53:50 PST
Fix for <select> elements in isolated tree mode.
Comment 1 Andres Gonzalez 2022-03-04 12:59:26 PST
rdar://89530022
Comment 2 Andres Gonzalez 2022-03-04 13:07:43 PST
Created attachment 453867 [details]
Patch
Comment 3 Tyler Wilcock 2022-03-04 13:55:03 PST
Comment on attachment 453867 [details]
Patch

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

> Source/WebCore/accessibility/AXObjectCache.cpp:3417
> +        case AXMenuListValueChanged:

This will cause the entire node to be re-computed (tree->updateNode(*notification.first)). Is there more fine-grained set of properties that we can re-compute via tree->updateNodeProperty instead?

I doubt people will be changing menu list values often enough for this to be a performance problem, so if we don't want to spend the time investigating this now it's fine. Just curious if you looked into this.
Comment 4 Andres Gonzalez 2022-03-07 06:48:42 PST
(In reply to Tyler Wilcock from comment #3)
> Comment on attachment 453867 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=453867&action=review
> 
> > Source/WebCore/accessibility/AXObjectCache.cpp:3417
> > +        case AXMenuListValueChanged:
> 
> This will cause the entire node to be re-computed
> (tree->updateNode(*notification.first)). Is there more fine-grained set of
> properties that we can re-compute via tree->updateNodeProperty instead?
> 
> I doubt people will be changing menu list values often enough for this to be
> a performance problem, so if we don't want to spend the time investigating
> this now it's fine. Just curious if you looked into this.

I considered this valid point, and there may be other properties besides the value that we need to update. We may refine if need be in a second pass based on the role and the properties that can be affected.
Comment 5 Andres Gonzalez 2022-03-07 07:10:22 PST
Created attachment 453978 [details]
Patch
Comment 6 EWS 2022-03-07 16:34:22 PST
Committed r290965 (248145@main): <https://commits.webkit.org/248145@main>

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