RESOLVED FIXED 126177
REGRESSION(r133214): Don't invalidate style when adding classes that don't match rules
https://bugs.webkit.org/show_bug.cgi?id=126177
Summary REGRESSION(r133214): Don't invalidate style when adding classes that don't ma...
Ryosuke Niwa
Reported 2013-12-23 12:53:27 PST
Consider merging https://chromium.googlesource.com/chromium/blink/+/50ffb9fad31542e86de85e3305894d99b1d81d34 or come up with a better fix if the regression exists in WebKit. r133214 caused a regression by making us mark elements for style recalc when adding new classes that don't match any rules due to a logic error in checkSelectorForClassChange. This patch corrects the logic error so that now adding and removing class names that don't match rules will not trigger a style recalc. To facilitate testing this patch I added a new Internals API: updateStyleAndReturnAffectedElementCount(). It updates the style of the document and returns the number of elements that had a style computed for them. This will also allow writing future tests when we make things smarter to avoid recalcs.
Attachments
patch (3.27 KB, patch)
2014-01-27 08:42 PST, Antti Koivisto
andersca: review+
Antti Koivisto
Comment 1 2014-01-27 08:42:52 PST
Antti Koivisto
Comment 2 2014-01-27 09:08:39 PST
Note You need to log in before you can comment on or make changes to this bug.