Don't use recalc for ClearEnsuredDescendantStyles.
Accessibility code calls EnsureComputedStyle during layout. That is not strictly a problem, but we lazily clear computed styles outside the flat tree during EnsureComputedStyle when querying computed style outside the flat tree. Since we use the style recalc code to clear ComputedStyle objects from a subtree we got a lifecycle issue with going to style recalc during layout. It would be interesting to find out why we end up querying computed style for an element outside the flat tree for accessibility, but otherwise using style recalc traversal to clear the ComputedStyle objects was a bit more complicated than necessary. This CL introduces a separate traversal that just clears ComputedStyle along with dirty bits instead of going through style recalc. TEST=StyleEngineTest.* Bug: 1130436 Change-Id: I22ce417c6bc133e0429ba794f555821d74d08512 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2424344Reviewed-by:Anders Hartvoll Ruud <andruud@chromium.org> Commit-Queue: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/master@{#810020}
Showing
Please register or sign in to comment