diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-02-24 18:55:39 +0530 |
---|---|---|
committer | bors-servo <lbergstrom+bors@mozilla.com> | 2016-02-24 18:55:39 +0530 |
commit | 438b3a444b40ea85e53be0bd1c4689680d577727 (patch) | |
tree | 9ca824b00af84157bf94e956f1980e2ee2a990dd /components/script/devtools.rs | |
parent | 7d25243af12e8546c6a7dc5dafc15fc2a5006345 (diff) | |
parent | 973918967f606d723fb7b71e14d682b16fa50e9d (diff) | |
download | servo-438b3a444b40ea85e53be0bd1c4689680d577727.tar.gz servo-438b3a444b40ea85e53be0bd1c4689680d577727.zip |
Auto merge of #9722 - mbrubeck:slow-selector, r=nox
Dirty elements whose selectors are affected by sibling changes
This fixes incremental layout of nodes that match pseudo-class selectors such as :first-child, :nth-child, :last-child, :first-of-type, etc. Fixes #8191 and other intermittent layout bugs.
This code is based on the following flags from Gecko:
https://hg.mozilla.org/mozilla-central/file/e1cf617a1f28/dom/base/nsINode.h#l134
Depends on servo/rust-selectors#71. r? @SimonSapin
There are a couple of TODO items in this commit, but I'd appreciate feedback on the general approach before I finish it up. (Also, if someone who knows more than I do could give some advice about atomic orderings...)
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9722)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/devtools.rs')
0 files changed, 0 insertions, 0 deletions