aboutsummaryrefslogtreecommitdiffstats
path: root/components
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2015-08-03 23:37:47 -0600
committerbors-servo <metajack+bors@gmail.com>2015-08-03 23:37:47 -0600
commit94cd76df61c1ea14199c9683603b548377aced3b (patch)
tree350c169ef0837278b43db8c70837edac6159a087 /components
parentd77f9415c5c64d18f31a1af45d2a9197373daa38 (diff)
parentac5e7ec035c15dff66b07c03297f531a6ab31f5a (diff)
downloadservo-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.rs5
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