ladybird/Libraries/LibWeb/Layout
Jelle Raaijmakers 3741d3040c LibWeb: Support percentage values in min/max flex item size constraints
Originally, 7200b3a16c introduced a two-pass system to determine
hypothetical cross sizes. Later, this was partially reverted in
0084d992d4, but some code was left behind that caused resolution of
percentages in `{min/max}-{width/height}` size constraints not to work.

Through intrinsic sizing, we can potentially end up with a definite
available space for the items in the last FC run. At that point we
should be able to resolve percentages against the available space, but
we were never doing that.
2025-11-05 12:01:40 +01:00
..
AudioBox.cpp LibWeb: Delete AudioPaintable::layout_box() 2025-10-10 09:03:39 +02:00
AudioBox.h LibWeb: Delete AudioPaintable::layout_box() 2025-10-10 09:03:39 +02:00
AvailableSpace.cpp
AvailableSpace.h
BlockContainer.cpp LibWeb: Verify type before casting PaintableBox to PaintableWithLines 2025-07-13 03:01:59 +02:00
BlockContainer.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
BlockFormattingContext.cpp LibWeb: Avoid including ComputedProperties.h in Element.h 2025-10-27 14:50:54 +00:00
BlockFormattingContext.h LibWeb: Fix incorrect margin collapsing behavior [BFC] 2025-09-08 14:09:06 +02:00
Box.cpp LibWeb: Move containment checks to Layout::Node 2025-05-13 15:30:14 +03:00
Box.h LibWeb: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
BreakNode.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
BreakNode.h Everywhere: Change west consts caught by clang-format-21 to east consts 2025-08-29 18:18:55 +01:00
CanvasBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
CanvasBox.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
CheckBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
CheckBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
FieldSetBox.cpp Meta: Disallow links to single-page HTML spec 2025-02-05 16:04:50 -07:00
FieldSetBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
FlexFormattingContext.cpp LibWeb: Support percentage values in min/max flex item size constraints 2025-11-05 12:01:40 +01:00
FlexFormattingContext.h LibWeb: Support percentage values in min/max flex item size constraints 2025-11-05 12:01:40 +01:00
FormAssociatedLabelableNode.h LibWeb: Replace usages of dynamic_cast with as and as_if 2025-08-22 20:26:09 +02:00
FormattingContext.cpp LibWeb: Add CSS::Size::is_intrinsic_sizing_constraint() 2025-11-05 12:01:40 +01:00
FormattingContext.h LibWeb: Support percentage values in min/max flex item size constraints 2025-11-05 12:01:40 +01:00
GridFormattingContext.cpp LibWeb: Make LengthBox hold LengthPercentageOrAuto 2025-09-04 13:31:24 +01:00
GridFormattingContext.h LibWeb: Make LengthBox hold LengthPercentageOrAuto 2025-09-04 13:31:24 +01:00
ImageBox.cpp LibWeb: Don't assume ImageBox's image provider is the DOM node 2025-09-25 22:38:05 +01:00
ImageBox.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
ImageProvider.cpp LibWeb: Implement support for drawing with CanvasPattern 2025-10-23 13:20:03 +01:00
ImageProvider.h LibWeb: Add ImageProvider virtual to access the DecodedImageData 2025-11-05 09:11:49 +01:00
InlineFormattingContext.cpp LibWeb: Position absolute block-level boxes below previous siblings 2025-09-29 18:37:53 +02:00
InlineFormattingContext.h
InlineLevelIterator.cpp LibWeb: Peek after extracting next chunk in InlineLevelIterator 2025-10-20 12:37:25 +01:00
InlineLevelIterator.h LibWeb: Store correct text offsets in PaintableFragment 2025-09-12 15:34:09 -04:00
InlineNode.cpp LibWeb: Support inserting non-inline elements into inline elements 2025-01-23 09:33:10 +01:00
InlineNode.h LibWeb: Add fast_is<T> optimization for Layout::InlineNode 2025-09-22 15:00:50 +02:00
Label.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
Label.h Everywhere: Change west consts caught by clang-format-21 to east consts 2025-08-29 18:18:55 +01:00
LabelableNode.cpp
LabelableNode.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
LayoutState.cpp LibWeb: Count the width of inline-blocks in InlineNodes only once 2025-10-27 21:45:33 -07:00
LayoutState.h LibWeb: Simplify UsedValues::static_position() 2025-08-28 13:45:37 +02:00
LegendBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
LegendBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
LineBox.cpp LibWeb: Store correct text offsets in PaintableFragment 2025-09-12 15:34:09 -04:00
LineBox.h LibWeb: Make fragment start/length size_t instead of int 2025-06-13 15:08:26 +02:00
LineBoxFragment.cpp LibWeb: Store correct text offsets in PaintableFragment 2025-09-12 15:34:09 -04:00
LineBoxFragment.h LibWeb: Store correct text offsets in PaintableFragment 2025-09-12 15:34:09 -04:00
LineBuilder.cpp LibWeb: Store correct text offsets in PaintableFragment 2025-09-12 15:34:09 -04:00
LineBuilder.h LibWeb: Explicitly update LineBuilder's last line at end of IFC run 2025-08-28 13:45:37 +02:00
ListItemBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ListItemBox.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
ListItemMarkerBox.cpp AK+LibWeb/CSS: Add lower-greek counter style 2025-07-21 15:18:17 +01:00
ListItemMarkerBox.h LibWeb: Improve graphical list item marker positioning 2025-07-17 09:35:09 +01:00
NavigableContainerViewport.cpp LibWeb: Avoid including Navigable.h in headers 2025-10-20 10:16:55 +01:00
NavigableContainerViewport.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
Node.cpp LibWeb: Extract transition coordination logic to reusable method 2025-10-23 10:09:11 +01:00
Node.h LibWeb: Position absolute block-level boxes below previous siblings 2025-09-29 18:37:53 +02:00
RadioButton.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
RadioButton.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ReplacedBox.cpp LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
ReplacedBox.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
SVGBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGBox.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
SVGClipBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGClipBox.h LibWeb: Add fast_is<T> for hotly dynamic_cast'ed things on imdb.com 2025-09-25 21:42:52 +02:00
SVGForeignObjectBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGForeignObjectBox.h LibWeb: Make SVG foreignObject establish a new stacking context 2025-07-09 14:36:08 +02:00
SVGFormattingContext.cpp LibWeb: Simplify calculation of the SVG viewbox transform 2025-10-27 16:42:27 -07:00
SVGFormattingContext.h LibGfx: Delete DeprecatedPath 2024-11-25 21:13:53 +01:00
SVGGeometryBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGGeometryBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGGraphicsBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGGraphicsBox.h LibWeb: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
SVGImageBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGImageBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGMaskBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGMaskBox.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
SVGSVGBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGSVGBox.h LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
SVGTextBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTextBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTextPathBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGTextPathBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
TableFormattingContext.cpp LibWeb: Make LengthBox hold LengthPercentageOrAuto 2025-09-04 13:31:24 +01:00
TableFormattingContext.h Everywhere: Change west consts caught by clang-format-21 to east consts 2025-08-29 18:18:55 +01:00
TableGrid.cpp LibWeb/Layout: Support visibility:collapse on table-row elements 2025-08-11 11:07:47 +01:00
TableGrid.h LibWeb/Layout: Support visibility:collapse on table-row elements 2025-08-11 11:07:47 +01:00
TableWrapper.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
TableWrapper.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
TextNode.cpp LibWeb/Tests: Add empty text chunk in empty editables 2025-09-24 12:33:17 +01:00
TextNode.h LibWeb/Tests: Add empty text chunk in empty editables 2025-09-24 12:33:17 +01:00
TreeBuilder.cpp LibWeb: Add ImageProvider virtual to access the DecodedImageData 2025-11-05 09:11:49 +01:00
TreeBuilder.h LibWeb/CSS: Move and rename PseudoElement types to prep for code gen 2025-03-24 09:49:50 +00:00
VideoBox.cpp LibWeb: Allow Layout::ImageBox to be anonymous 2025-07-28 22:46:27 +02:00
VideoBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
Viewport.cpp LibWeb: Rename is_generated to is_generated_for_pseudo_element 2025-09-24 12:33:17 +01:00
Viewport.h Everywhere: Change west consts caught by clang-format-21 to east consts 2025-08-29 18:18:55 +01:00