Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Revert "Reland "Invalidation on stylesheet changes using selector mat…
…ching"" This reverts commit c125361b2841cfc76a48a91896bc4c049f2ace67. Original change's description: > Reland "Invalidation on stylesheet changes using selector matching" > > This is a reland of commit 5d12010188b8fd648efd2279956e8a6cbe20654e. > The revert has been in for ~6 hours and the tests in question still > fail on the Mac builders, so it's unlikely to be the culprit. > It also passes locally on Mac. > > Original change's description: > > Invalidation on stylesheet changes using selector matching > > > > When inserting, deleting or modifying stylesheets, we need to invalidate > > style for some elements, even though the elements themselves did not > > change. Currently, we reuse the concept of InvalidationSets, which are > > mostly designed for changes to elements, for that. This can sometimes > > cause overbroad invalidations, especially if the style is written in > > a “modern” (read: less-than-ideal) fashion. > > > > We replace this by a somewhat slower but more precise and probably > > simpler system; for each candidate element in the DOM, we see if it > > matches any selectors in the old or the new rulesets (by means of > > the same bucketing logic we currently have during element rule > > collection), and if so, we mark it for style recalc. This isn't perfect; > > if we are e.g. adding a single rule to an existing stylesheet, we would > > still invalidate based on all rules in the sheet. We hope to improve > > this in a future patch, but even now, this shows significant > > improvements over most of blink_perf.css, with only a few regressions. > > > > Note that this means the experimental style invalidation information in > > devtools becomes somewhat less useful; it will no longer give reasons > > for invalidations when style sheets change. Fixing this would probably > > involve extending the protocol, although I haven't looked deeply into > > this. > > > > Bug: 1444522 > > Change-Id: Ib95cf8d215bf4e7b58ab1955ebc1f3c7e31aead8 > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4783456 > > Commit-Queue: Steinar H Gunderson <sesse@chromium.org> > > Reviewed-by: Adithya Srinivasan <adithyas@chromium.org> > > Reviewed-by: Rune Lillesveen <futhark@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#1190433} > > Bug: 1444522 > Change-Id: I522f99ee0fcc59d52d396d92a9af682f6be67a60 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4830242 > Commit-Queue: Steinar H Gunderson <sesse@chromium.org> > Reviewed-by: Rune Lillesveen <futhark@chromium.org> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Cr-Commit-Position: refs/heads/main@{#1190656} Bug: 1478343 Change-Id: I5c463e32f547157b6620cda6f324668f4f46a8c7 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4839258 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org> Commit-Queue: Steinar H Gunderson <sesse@chromium.org> Cr-Commit-Position: refs/heads/main@{#1192349}
- Loading branch information