servo/components/layout
Martin Robinson 9232b0f550
layout: Only create a LayoutContext if restyling (#37726)
The creation of `LayoutContext` does more work than necessary if layout
just needs to do something like make a display list and not restyle and
relayout. This change makes it so that these kind of non-restyle layouts
do not need to create a display list. In addition, the creation of
`LayoutContext` is better encapsulate

Testing: This should not change observable behavior and is thus covered
by existing WPT tests.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
2025-06-27 15:01:30 +00:00
..
display_list layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
flexbox layout: Let align-content: stretch fall back to unsafe flex-start (#37708) 2025-06-26 13:53:28 +00:00
flow layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
fragment_tree layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
stylesheets Add a user agent style for the <slot> element (#37174) 2025-05-29 08:20:01 +00:00
table Rename script_layout_interface to layout_api (#37591) 2025-06-20 17:13:05 +00:00
taffy CSS Grid: percentage sizing fixes (#34948) 2025-06-08 15:17:10 +00:00
tests layout: Combine layout_2020 and layout_thread_2020 into a crate called layout (#36613) 2025-04-19 10:17:03 +00:00
Cargo.toml Rename script_layout_interface to layout_api (#37591) 2025-06-20 17:13:05 +00:00
cell.rs layout: Combine layout_2020 and layout_thread_2020 into a crate called layout (#36613) 2025-04-19 10:17:03 +00:00
construct_modern.rs Move to_bidi_level method from Stylo to Servo (#37343) 2025-06-11 14:44:13 +00:00
context.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
dom.rs Rename script_layout_interface to layout_api (#37591) 2025-06-20 17:13:05 +00:00
dom_traversal.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
formatting_contexts.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
geom.rs layout: Inform child layout about final block size (#36980) 2025-05-14 20:35:49 +00:00
layout_box_base.rs layout: Add a repaint-only incremental layout mode (#36978) 2025-05-12 17:03:50 +00:00
layout_impl.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
lib.rs layout: Move text decoration propagation to stacking context tree construction (#37069) 2025-05-21 16:38:29 +00:00
lists.rs Upgrade Stylo to 2025-06-03 (#37444) 2025-06-19 12:30:32 +00:00
positioned.rs layout: Split overflow calculation after fragment tree construction (#37203) 2025-05-30 19:41:05 +00:00
query.rs Rename script_layout_interface to layout_api (#37591) 2025-06-20 17:13:05 +00:00
quotes.rs layout: Combine layout_2020 and layout_thread_2020 into a crate called layout (#36613) 2025-04-19 10:17:03 +00:00
replaced.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00
sizing.rs layout: Combine layout_2020 and layout_thread_2020 into a crate called layout (#36613) 2025-04-19 10:17:03 +00:00
style_ext.rs Move to_bidi_level method from Stylo to Servo (#37343) 2025-06-11 14:44:13 +00:00
traversal.rs layout: Only create a LayoutContext if restyling (#37726) 2025-06-27 15:01:30 +00:00