diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-08-03 23:37:47 -0600 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-08-03 23:37:47 -0600 |
commit | 94cd76df61c1ea14199c9683603b548377aced3b (patch) | |
tree | 350c169ef0837278b43db8c70837edac6159a087 /components | |
parent | d77f9415c5c64d18f31a1af45d2a9197373daa38 (diff) | |
parent | ac5e7ec035c15dff66b07c03297f531a6ab31f5a (diff) | |
download | servo-94cd76df61c1ea14199c9683603b548377aced3b.tar.gz servo-94cd76df61c1ea14199c9683603b548377aced3b.zip |
Auto merge of #6938 - pcwalton:inline-repair-jumpiness, r=mbrubeck
construct: When repairing styles for incremental reflow, only repair styles of nodes that represent the dirty node.
Fixes jumpiness on many pages; e.g. the WPT results pages.
For some reason, this would not reproduce with an automated test.
r? @mbrubeck
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6938)
<!-- Reviewable:end -->
Diffstat (limited to 'components')
-rw-r--r-- | components/layout/construct.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/components/layout/construct.rs b/components/layout/construct.rs index 519046b5533..9ab1dfc6675 100644 --- a/components/layout/construct.rs +++ b/components/layout/construct.rs @@ -1295,6 +1295,11 @@ impl<'a> FlowConstructor<'a> { for fragment in inline_fragments_construction_result.fragments .fragments .iter_mut() { + // Only mutate the styles of fragments that represent the dirty node. + if fragment.node != node.opaque() { + continue + } + match fragment.specific { SpecificFragmentInfo::InlineBlock(ref mut inline_block_fragment) => { flow::mut_base(&mut *inline_block_fragment.flow_ref).restyle_damage |