ladybird/Userland/Libraries/LibWeb/Layout
Enver Balalic 8b4d09932a LibWeb: Fix sizing of flex child that has flex-basis 0
Before if an element didn't have a main min size we would clamp
it to a literal zero. If that element also had a flex-basis 0
it's width would end up being 0.
This patch adds a determine_min_main_size_of_child function that
will calculate the minimum main size for the box based on the
content of the box.
We use the result of that function now instead of clamping
the element main min size to 0.

This also adds one more box to the flex.html test page, which is
the same flex: 0 0 0 box but with flex-direction: column.
2022-03-30 21:16:47 +02:00
..
BlockContainer.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
BlockContainer.h LibWeb: Move hit testing to the painting tree 2022-03-11 00:21:49 +01:00
BlockFormattingContext.cpp LibWeb: Make floating boxes in IFC occupy horizontal margin box 2022-03-29 12:35:31 +02:00
BlockFormattingContext.h LibWeb: Support CSS floats in inline flow 2022-03-22 19:26:51 +01:00
Box.cpp LibWeb: Move Layout::Box::is_out_of_flow() to Layout::Node 2022-03-22 19:26:51 +01:00
Box.h LibWeb: Move Layout::Box::is_out_of_flow() to Layout::Node 2022-03-22 19:26:51 +01:00
BoxModelMetrics.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoxModelMetrics.h LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
BreakNode.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
BreakNode.h LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
ButtonBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ButtonBox.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
CanvasBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
CanvasBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
CheckBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
CheckBox.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
FlexFormattingContext.cpp LibWeb: Fix sizing of flex child that has flex-basis 0 2022-03-30 21:16:47 +02:00
FlexFormattingContext.h LibWeb: Fix sizing of flex child that has flex-basis 0 2022-03-30 21:16:47 +02:00
FormAssociatedLabelableNode.h LibWeb: Remove inheritance of FormAssociatedElement from HTMLElement 2022-03-24 03:35:11 +01:00
FormattingContext.cpp LibWeb: Fix calculating the intrinsic height of a box 2022-03-30 21:16:47 +02:00
FormattingContext.h LibWeb: Fix calculating the intrinsic height of a box 2022-03-30 21:16:47 +02:00
FormattingState.cpp LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
FormattingState.h LibWeb: Rename "offset" in box model metrics to "inset" 2022-03-26 17:31:01 +01:00
FrameBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
FrameBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
ImageBox.cpp LibWeb: Use Gfx::Font::pixel_size() when we want pixel metrics 2022-03-27 01:14:56 +01:00
ImageBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
InitialContainingBlock.cpp LibWeb: Fill the whole viewport with the correct background color 2022-03-23 17:38:00 +01:00
InitialContainingBlock.h LibWeb: Build stacking context tree lazily 2022-03-21 13:03:33 +01:00
InlineFormattingContext.cpp LibWeb: Use more precise font metrics when doing inline layout 2022-03-30 01:12:44 +02:00
InlineFormattingContext.h LibWeb: Rewrite CSS float implementation to use offset-from-edge 2022-03-18 15:18:48 +01:00
InlineLevelIterator.cpp LibWeb: Make whitespace collapsing stateless 2022-03-27 21:56:21 +02:00
InlineLevelIterator.h LibWeb: Make whitespace collapsing stateless 2022-03-27 21:56:21 +02:00
InlineNode.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
InlineNode.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
Label.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
Label.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
LabelableNode.cpp LibWeb: Move mouse event and label logic from layout to painting tree 2022-03-11 00:21:49 +01:00
LabelableNode.h LibWeb: Move mouse event and label logic from layout to painting tree 2022-03-11 00:21:49 +01:00
LayoutPosition.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.h Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
LineBox.cpp LibWeb: Respect inline-axis margins between line box fragments :^) 2022-03-09 18:47:32 +01:00
LineBox.h LibWeb: Bring CSS line-height implementation closer to spec 2022-03-24 22:52:44 +01:00
LineBoxFragment.cpp LibWeb: Use more precise font metrics when doing inline layout 2022-03-30 01:12:44 +02:00
LineBoxFragment.h LibWeb: Use the new Gfx::Painter::draw_text_run() API for drawing text 2022-03-30 00:57:15 +02:00
LineBuilder.cpp LibWeb: Use more precise font metrics when doing inline layout 2022-03-30 01:12:44 +02:00
LineBuilder.h LibWeb: Make text newlines in "pre" mode emit a ForcedBreak item 2022-03-26 20:04:56 +01:00
ListItemBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ListItemBox.h LibWeb: Make display: foo box constructors take the Element by pointer 2022-02-25 19:35:34 +01:00
ListItemMarkerBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ListItemMarkerBox.h LibWeb: Add some fast_is<T> helpers for hot classes on GitHub :^) 2022-03-13 18:09:43 +01:00
Node.cpp LibWeb: Rename ComputedValues::offset() => inset() 2022-03-27 18:16:08 +02:00
Node.h LibWeb: Add Layout::Node::line_height() 2022-03-24 18:14:01 +01:00
Progress.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
Progress.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
RadioButton.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
RadioButton.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
ReplacedBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
ReplacedBox.h LibWeb: Add some fast_is<T> helpers for hot classes on GitHub :^) 2022-03-13 18:09:43 +01:00
SVGBox.cpp LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGBox.h LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGFormattingContext.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
SVGFormattingContext.h LibWeb: Start making our layout system "transactional" 2022-02-21 18:35:12 +01:00
SVGGeometryBox.cpp LibWeb: Remove a bunch of no-longer needed #includes 2022-03-11 00:21:49 +01:00
SVGGeometryBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
SVGGraphicsBox.cpp LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
SVGGraphicsBox.h LibWeb: Let Paintable perform the painting 2022-03-11 00:21:49 +01:00
SVGSVGBox.cpp LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
SVGSVGBox.h LibWeb: Make SVG <svg> elements behave as CSS replaced elements 2022-03-19 12:42:10 +01:00
TableBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableBox.h LibWeb: Rename Layout::BlockBox => BlockContainer 2021-10-06 20:10:36 +02:00
TableCellBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableCellBox.h LibWeb: Remove Layout::Box::width_of_logical_containing_block() 2021-10-27 18:00:51 +02:00
TableFormattingContext.cpp LibWeb: Size table cells using a combination of min- and max-widths 2022-03-29 00:39:57 +02:00
TableFormattingContext.h LibWeb: Size table cells using a combination of min- and max-widths 2022-03-29 00:39:57 +02:00
TableRowBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableRowBox.h LibWeb: Start work towards modern CSS "display" values 2021-10-06 19:12:52 +02:00
TableRowGroupBox.cpp Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
TableRowGroupBox.h LibWeb: Make display: foo box constructors take the Element by pointer 2022-02-25 19:35:34 +01:00
TextNode.cpp LibWeb: Ensure that TextNode::ChunkIterator emits preserved newlines 2022-03-29 03:05:11 +02:00
TextNode.h LibWeb: Make whitespace collapsing stateless 2022-03-27 21:56:21 +02:00
TreeBuilder.cpp LibWeb: Only set children-are-not-inline when inserting in-flow child 2022-03-30 00:57:15 +02:00
TreeBuilder.h LibWeb: Add missing headers 2021-10-20 09:20:18 +01:00