Oriol Brufau
19a7e95a6a
Refactor computation of preferred aspect ratios ( #34416 )
...
* Refactor computation of preferred aspect ratios
Computing min/max-content sizes required a ContainingBlock in order to
resolve the padding and border when determining the preferred aspect
ratio. However, all callers already knew the padding and border, so they
can compute the ratio themselves, and pass it directly instead of
the ContainingBlock.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* Put preferred aspect ratio into ConstraintSpace
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
---------
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2024-11-29 11:40:52 +00:00
tanishka
16da1c2721
Ensure taffy uses margin when calling used_size_as_if_inline_element_from_content_box_sizes() ( #34421 )
...
Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>
2024-11-28 19:20:39 +00:00
Oriol Brufau
a37ccc3e64
Use natural ratio for object-fit
( #34413 )
...
We were using the preferred aspect ratio provided by the `aspect-ratio`
property instead of the natural aspect ratio. However, the preferred
aspect ratio should only be used to size the replaced element. To paint
the replaced contents into that element we need the natural ratio.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2024-11-28 12:57:38 +00:00
Nico Burns
97154d9cf8
Avoid laying out grid items and generating fragments if only inline size is requested ( #34352 )
...
* Layout: Short-circuit grid item layout if only inline size is requested
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Layout: Avoid creating grid item fragments if only size is requested
Signed-off-by: Nico Burns <nico@nicoburns.com>
---------
Signed-off-by: Nico Burns <nico@nicoburns.com>
2024-11-25 21:32:52 +00:00
Nico Burns
6cbd89dbb0
Layout: Implement CSS Grid using taffy
( #32619 )
...
* Add layout.grid.enabled pref
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Add taffy dependency
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Import taffy <-> stylo conversion code from taffy_stylo crate
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Add `Grid` variant to DisplayInside
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Implement CSS Grid using Taffy
Signed-off-by: Nico Burns <nico@nicoburns.com>
Import full stylo_taffy crate
Signed-off-by: Nico Burns <nico@nicoburns.com>
Squashed PR feedback changes
Deduplicate is_document_only_whitespace
Signed-off-by: Nico Burns <nico@nicoburns.com>
Import taffy::AvailableSpace
Signed-off-by: Nico Burns <nico@nicoburns.com>
Rename FlexContext to TaffyContainerContext
Signed-off-by: Nico Burns <nico@nicoburns.com>
Eliminate references to flexbox in taffy/layout module
Signed-off-by: Nico Burns <nico@nicoburns.com>
Use constructors for geom types
Signed-off-by: Nico Burns <nico@nicoburns.com>
Remove comment about abspos elements splitting contiguous text runs
Signed-off-by: Nico Burns <nico@nicoburns.com>
Remove reference to flexbox in taffy/construct
Signed-off-by: Nico Burns <nico@nicoburns.com>
Deduplicate construction of flexbox/grid containers
Signed-off-by: Nico Burns <nico@nicoburns.com>
Make anonymous text runs InFlow
Signed-off-by: Nico Burns <nico@nicoburns.com>
Remove commented code
Signed-off-by: Nico Burns <nico@nicoburns.com>
Update comments
Signed-off-by: Nico Burns <nico@nicoburns.com>
Inline/vendor the stylo/taffy interop code
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Update test expectations
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix nits from PR review
Signed-off-by: Nico Burns <nico@nicoburns.com>
---------
Signed-off-by: Nico Burns <nico@nicoburns.com>
2024-11-21 20:21:01 +00:00