mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Pass a &mut Flow to build_display_list_for_subtree.
This commit is contained in:
parent
fa0e198c8f
commit
c1d953cd2e
2 changed files with 4 additions and 6 deletions
|
@ -12,7 +12,6 @@ use floats::SpeculatedFloatPlacement;
|
||||||
use flow::IS_ABSOLUTELY_POSITIONED;
|
use flow::IS_ABSOLUTELY_POSITIONED;
|
||||||
use flow::{PostorderFlowTraversal, PreorderFlowTraversal};
|
use flow::{PostorderFlowTraversal, PreorderFlowTraversal};
|
||||||
use flow::{self, Flow, ImmutableFlowUtils, InorderFlowTraversal, MutableFlowUtils};
|
use flow::{self, Flow, ImmutableFlowUtils, InorderFlowTraversal, MutableFlowUtils};
|
||||||
use flow_ref::{self, FlowRef};
|
|
||||||
use fragment::FragmentBorderBoxIterator;
|
use fragment::FragmentBorderBoxIterator;
|
||||||
use generated_content::ResolveGeneratedContent;
|
use generated_content::ResolveGeneratedContent;
|
||||||
use gfx::display_list::{DisplayItem, StackingContext};
|
use gfx::display_list::{DisplayItem, StackingContext};
|
||||||
|
@ -75,11 +74,10 @@ pub fn traverse_flow_tree_preorder(root: &mut Flow,
|
||||||
doit(root, assign_inline_sizes, assign_block_sizes);
|
doit(root, assign_inline_sizes, assign_block_sizes);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn build_display_list_for_subtree(root: &mut FlowRef,
|
pub fn build_display_list_for_subtree(flow_root: &mut Flow,
|
||||||
root_stacking_context: &mut StackingContext,
|
root_stacking_context: &mut StackingContext,
|
||||||
shared_layout_context: &SharedLayoutContext)
|
shared_layout_context: &SharedLayoutContext)
|
||||||
-> Vec<DisplayItem> {
|
-> Vec<DisplayItem> {
|
||||||
let flow_root = flow_ref::deref_mut(root);
|
|
||||||
flow_root.traverse_preorder(&ComputeAbsolutePositions { layout_context: shared_layout_context });
|
flow_root.traverse_preorder(&ComputeAbsolutePositions { layout_context: shared_layout_context });
|
||||||
let mut children = vec![];
|
let mut children = vec![];
|
||||||
flow_root.collect_stacking_contexts(root_stacking_context.id,
|
flow_root.collect_stacking_contexts(root_stacking_context.id,
|
||||||
|
@ -87,9 +85,9 @@ pub fn build_display_list_for_subtree(root: &mut FlowRef,
|
||||||
root_stacking_context.add_children(children);
|
root_stacking_context.add_children(children);
|
||||||
let mut build_display_list = BuildDisplayList {
|
let mut build_display_list = BuildDisplayList {
|
||||||
state: DisplayListBuildState::new(shared_layout_context,
|
state: DisplayListBuildState::new(shared_layout_context,
|
||||||
flow::base(&*flow_root).stacking_context_id),
|
flow::base(flow_root).stacking_context_id),
|
||||||
};
|
};
|
||||||
build_display_list.traverse(&mut *flow_root);
|
build_display_list.traverse(flow_root);
|
||||||
build_display_list.state.items
|
build_display_list.state.items
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -933,7 +933,7 @@ impl LayoutThread {
|
||||||
None);
|
None);
|
||||||
|
|
||||||
let display_list_entries =
|
let display_list_entries =
|
||||||
sequential::build_display_list_for_subtree(layout_root,
|
sequential::build_display_list_for_subtree(flow_ref::deref_mut(layout_root),
|
||||||
&mut root_stacking_context,
|
&mut root_stacking_context,
|
||||||
shared_layout_context);
|
shared_layout_context);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue