servo/components/layout_2020
Oriol Brufau e10e989abb
Don't transfer indefinite height: stretch to inline axis (#34557)
Consider this testcase:
```html
<canvas style="aspect-ratio: 1; height: stretch; background: cyan"
        width="200" height="100"></canvas>
```

To compute the intrinsic inline sizes we were treating `height: stretch`
as the natural height (100px) and then transferring that to the inline
axis through the preferred aspect ratio. So the element was 100px wide.

However, an indefinite `stretch` should be treated as an automatic size,
which wouldn't be transferred to the inline axis.

The fix actually makes the code slightly simpler.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
2024-12-10 11:12:28 +00:00
..
display_list Use webrender_api::units::DevicePixel rather than style_traits::DevicePixel unless interfacing with Stylo (#34353) 2024-11-25 23:42:04 +00:00
flexbox layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
flow layout: Have SameFormattingContextBlock be a LayoutBoxBase (#34530) 2024-12-09 06:57:15 +00:00
fragment_tree Add BoxFragment::is_inline_box() (#34233) 2024-11-12 15:50:20 +00:00
table layout: Add LayoutBox to TableSlotCell (#34513) 2024-12-08 08:54:40 +00:00
taffy layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
tests Upgrade Stylo to 2024-12-04 (#34501) 2024-12-06 01:05:54 +00:00
Cargo.toml Remove some unused dependencies (#34355) 2024-11-25 10:29:58 +00:00
cell.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
construct_modern.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
context.rs fonts: Simplify FontContext in two ways that affect the unit test (#33541) 2024-09-25 20:15:47 +00:00
dom.rs Layout: Implement CSS Grid using taffy (#32619) 2024-11-21 20:21:01 +00:00
dom_traversal.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
formatting_contexts.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
geom.rs Use LazyCells instead of callbacks when resolving size keywords (#34211) 2024-11-11 16:26:20 +00:00
layout_box_base.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
layout_debug.rs clippy: Fix warnings in shared and config, fonts, layout, and layout_2020 components (#32674) 2024-07-04 14:18:58 +00:00
lib.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
lists.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
positioned.rs layout: Add LayoutBoxBase and use it for IndependentFormattingContext (#34507) 2024-12-07 19:12:25 +00:00
query.rs Fix offsetLeft/offsetTop to match major browsers (#32761) 2024-11-16 15:28:38 +00:00
replaced.rs Don't transfer indefinite height: stretch to inline axis (#34557) 2024-12-10 11:12:28 +00:00
sizing.rs Refactor computation of preferred aspect ratios (#34416) 2024-11-29 11:40:52 +00:00
style_ext.rs Refactor computation of preferred aspect ratios (#34416) 2024-11-29 11:40:52 +00:00
traversal.rs script: Split style and layout data in DOM nodes (#31985) 2024-04-04 07:56:51 +00:00