NEW 122800
When there are no more stylesheets schedule the recalc async
https://bugs.webkit.org/show_bug.cgi?id=122800
Summary When there are no more stylesheets schedule the recalc async
Ryosuke Niwa
Reported 2013-10-14 18:02:11 PDT
Merge https://chromium.googlesource.com/chromium/blink/+/33c8b55d6d6ed5bf362074532a835903bcd9453b or come up with a better fix: Document::didRemoveAllPendingStylesheet gets called whenever the pending stylesheet counter goes to zero. This can happen many times in a document if it's inserting inline stylesheets dynamically which then causes many recalcStyle(Force) to happen. This patch switches didRemoveAllPendingStylesheet to instead schedule an async recalc style. This prevents the "waterfall of recalc styles" you can see in apps that append many <style> elements while they're loading. I also removed code that scheduled a relayout when adding or removing stylesheets since it doesn't appear needed or make sense to do this outside the normal recalc style flow. In addition making this change appears to fix the fast/regions/ writing mode tests that were broken by r157174 where ojan and I fixed writing modes for lazy attach.
Attachments
Note You need to log in before you can comment on or make changes to this bug.