servo/components/layout_2020
Martin Robinson bd285f543e
Layout floats as children of their inline ancestors (#30130)
When layout was split into two phases, floats were laid out as direct
children of the inline formatting context. This meant that they were
positioned properly, but not properly made children of their inline
ancestors' stacking contexts. This change maintains the proper
positioning of floats, but positions them relatively to their inline
ancestors.

The big change here is that `text-align` needs to be taken into account
before actually laying out LineItems. This has the added benefit of
setting inline layout for the implementation of `text-align: full`. Now
all line items are laid out at the real final position and we can adjust
the `start_corner` property of float `BoxFragments` when their ancestors
are laid out.
2023-08-22 20:10:34 +00:00
..
display_list Further changes required by Servo 2023-08-16 17:46:41 +02:00
flexbox Make fewer PositioningContexts when descending (#30061) 2023-08-03 08:51:27 +00:00
flow Layout floats as children of their inline ancestors (#30130) 2023-08-22 20:10:34 +00:00
fragment_tree Layout floats as children of their inline ancestors (#30130) 2023-08-22 20:10:34 +00:00
tests Fix failing unit test due to overflow (#30074) 2023-08-08 11:29:14 +00:00
Cargo.toml Add initial support for css-text-3 whitespace handling (#29828) 2023-07-20 18:34:31 +00:00
cell.rs Implement Default for ArcRefCell 2020-03-17 11:15:17 -07:00
context.rs Combine DOM-related concepts in Layout 2020 into dom.rs 2023-05-13 11:52:59 +02:00
dom.rs Combine DOM-related concepts in Layout 2020 into dom.rs 2023-05-13 11:52:59 +02:00
dom_traversal.rs Make the choice of layout runtime setting 2023-07-06 14:49:24 +02:00
formatting_contexts.rs Resolve cyclic margin and padding percentages against zero (#30085) 2023-08-10 11:38:44 +00:00
geom.rs Split line layout into two phases (#30089) 2023-08-11 07:19:50 +00:00
layout_debug.rs Layout 2020: Move all Fragment code to the fragment_tree directory 2023-06-04 18:12:11 +02:00
lib.rs Layout 2020: Move all Fragment code to the fragment_tree directory 2023-06-04 18:12:11 +02:00
lists.rs Make the choice of layout runtime setting 2023-07-06 14:49:24 +02:00
positioned.rs Split line layout into two phases (#30089) 2023-08-11 07:19:50 +00:00
query.rs Further changes required by Servo 2023-08-16 17:46:41 +02:00
replaced.rs Layout 2020: Move all Fragment code to the fragment_tree directory 2023-06-04 18:12:11 +02:00
sizing.rs Resolve cyclic margin and padding percentages against zero (#30085) 2023-08-10 11:38:44 +00:00
style_ext.rs Further changes required by Servo 2023-08-16 17:46:41 +02:00
traversal.rs Combine DOM-related concepts in Layout 2020 into dom.rs 2023-05-13 11:52:59 +02:00