DescriptionOptimize BlinkAXTreeSource by adding freeze/thaw for things like root, focus.
When profiling some sites that are slow to build an accessibility tree,
a lot of time was spent retrieving the document, root accessibility object,
or focused accessibility object. Introduce the concept of freezing
BlinkAXTreeSource, which precomputes these once, and then allows them to
be reused through the rest of a function scope.
This is safe because the accessibility tree does not change during processing
of an accessibility event.
For one cs.chromium.org page, this sped up initial load by 50% (1000 ms
to 650 ms) and single-node updates by 400% (90 ms to 23 ms).
BUG=631923, 638474
Committed: https://crrev.com/36ef7b3f562ce421927e6abc941e716db2eb9dc6
Cr-Commit-Position: refs/heads/master@{#417073}
Patch Set 1 #
Total comments: 8
Patch Set 2 : Rebase #Patch Set 3 : Accessors for document, root, and focus #Patch Set 4 : Fix pdf accessibility #
Messages
Total messages: 21 (13 generated)
|