mirror of
https://github.com/servo/servo.git
synced 2025-08-05 05:30:08 +01:00
Fix painting order of atomic inline stacking containers (#30458)
* Sort stacking contexts and stacking containers by painting order * fix stealing of stacking containers; fix interleaving with fragments * actually positioned stacking containers should be stolen too * update expectations and clean up panic changes * rework naming and docs * rename s_c_a_p_s_c to real_s_c_a_p_s_c; fix docs * rename InlineStackingContainer to AtomicInlineStackingContainer * rework debug logging to use PrintTree * clean up docs and PrintTree output * don't panic unless cfg!(debug_assertions) is true * update expectations
This commit is contained in:
parent
c06ec90151
commit
afe4faa09a
11 changed files with 374 additions and 156 deletions
|
@ -1259,7 +1259,8 @@ impl LayoutThread {
|
|||
// Build the root stacking context. This turns the `FragmentTree` into a
|
||||
// tree of fragments in CSS painting order and also creates all
|
||||
// applicable spatial and clip nodes.
|
||||
let root_stacking_context = display_list.build_stacking_context_tree(&fragment_tree);
|
||||
let root_stacking_context =
|
||||
display_list.build_stacking_context_tree(&fragment_tree, &self.debug);
|
||||
|
||||
// Build the rest of the display list which inclues all of the WebRender primitives.
|
||||
let (iframe_sizes, is_contentful) =
|
||||
|
@ -1268,6 +1269,9 @@ impl LayoutThread {
|
|||
if self.debug.dump_flow_tree {
|
||||
fragment_tree.print();
|
||||
}
|
||||
if self.debug.dump_stacking_context_tree {
|
||||
root_stacking_context.debug_print();
|
||||
}
|
||||
debug!("Layout done!");
|
||||
|
||||
// Observe notifications about rendered frames if needed right before
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue