aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/sequential.rs
diff options
context:
space:
mode:
authorEmilio Cobos Álvarez <ecoal95@gmail.com>2016-08-13 02:36:17 -0700
committerEmilio Cobos Álvarez <ecoal95@gmail.com>2016-08-16 15:34:28 -0700
commitfd3a99ead3093c824b823863daee02970bb8f79d (patch)
tree736ff9ce14f9159bb9f6a5337b796749d14b32e8 /components/layout/sequential.rs
parent49431be44a7bbc256829463f4ec4658801742bd9 (diff)
downloadservo-fd3a99ead3093c824b823863daee02970bb8f79d.tar.gz
servo-fd3a99ead3093c824b823863daee02970bb8f79d.zip
layout: Make the stacking context take into account the children transform when calculating overflow areas.
This only works for simple translations and similar, but I want Patrick to validate my approach.
Diffstat (limited to 'components/layout/sequential.rs')
-rw-r--r--components/layout/sequential.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/components/layout/sequential.rs b/components/layout/sequential.rs
index 9d51df51a80..1862086b163 100644
--- a/components/layout/sequential.rs
+++ b/components/layout/sequential.rs
@@ -84,8 +84,10 @@ pub fn build_display_list_for_subtree(root: &mut FlowRef,
let flow_root = flow_ref::deref_mut(root);
let layout_context = LayoutContext::new(shared_layout_context);
flow_root.traverse_preorder(&ComputeAbsolutePositions { layout_context: &layout_context });
+ let mut children = vec![];
flow_root.collect_stacking_contexts(root_stacking_context.id,
- &mut root_stacking_context.children);
+ &mut children);
+ root_stacking_context.add_children(children);
let mut build_display_list = BuildDisplayList {
state: DisplayListBuildState::new(&layout_context,
flow::base(&*flow_root).stacking_context_id),