[M117 mini] Use simple approach to invalidating aria-hidden subtrees
A general optimization for Chrome was landed in CL:4687538, which
invalidated cached values individual nodes rather than the entire
document, for small changes and updates to the layout and DOM.
However, aria-hidden changes require entire subtrees to be invalidated.
There are a couple of approaches that could work. The one taken
in the landing of CL:4687538 was to attempt to iterate the tree
while invalidating the objects. However, this led to an infinite
loop as invalidating cached objects affects tree walking.
A simpler approach is to reuse another method that works well,
RemoveSubtreeWhenSafe(). This wipes out the entire aria-hidden
subtree of AXObjects and recreates it. As aria-hidden is not
expected to change very often, this is believed to be performant
enough. In addition, this results in being able to remove
InvalidateCachedValuesOnSubtree() from the codebase, resulting
in simpler, cleaner code.
Fixed: 1484425
Change-Id: I9dbe8cfb606e01f9a43d7d5150c9f7999cff543b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4879799
Reviewed-by: Chris Harrelson <[email protected]>
Commit-Queue: Aaron Leventhal <[email protected]>
Owners-Override: Prudhvikumar Bommana <[email protected]>
Reviewed-by: Prudhvikumar Bommana <[email protected]>
Cr-Commit-Position: refs/branch-heads/5938_62@{#14}
Cr-Branched-From: 25a7172909a4cba7355365cf424d7d7eb35231f4-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}
Incrementing VERSION to 117.0.5938.92
Change-Id: Icfb6ba4766d891764ca819f56e7a14b0799d0245
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4864844
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938_62@{#13}
Cr-Branched-From: 25a7172909a4cba7355365cf424d7d7eb35231f4-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}
Incrementing VERSION to 117.0.5938.91
Change-Id: If6b496d628c9a7a3a2c95b135742ceb229c8900c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4867531
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938_62@{#12}
Cr-Branched-From: 25a7172909a4cba7355365cf424d7d7eb35231f4-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}
Incrementing VERSION to 117.0.5938.90
Change-Id: I068639a5b8e9b12065f47427d11b5889836c4321
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4864402
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938_62@{#11}
Cr-Branched-From: 25a7172909a4cba7355365cf424d7d7eb35231f4-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}
Incrementing VERSION to 117.0.5938.89
Change-Id: I7411b560d83ed39bc7c671bc347af32a8a549252
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4867530
Bot-Commit: Chrome Release Bot (LUCI) <chrome-official-brancher@chops-service-accounts.iam.gserviceaccount.com>
Cr-Commit-Position: refs/branch-heads/5938_62@{#10}
Cr-Branched-From: 25a7172909a4cba7355365cf424d7d7eb35231f4-refs/branch-heads/5938@{#1146}
Cr-Branched-From: 2b50cb4bcc2318034581a816714d9535dc38966d-refs/heads/main@{#1181205}