ladybird/Userland/Libraries/LibWeb/Layout
Andreas Kling 3372a691da LibWeb: Don't let items flex to infinite size in column layout
When sizing under a max-content constraint, we allow flex lines to have
an infinite amount of "remaining space", but we shouldn't let infinity
leak into the geometry of items. So treat it as zero in arithmetic.

This fixes an issue where inline SVGs with natural aspect ratio (from
viewBox) but no natural width or height could get an infinite size as
flex items.
2023-07-06 09:25:48 +02:00
..
AudioBox.cpp LibWeb: Begin implementing the HTMLAudioElement for audio playback 2023-06-13 06:14:01 +02:00
AudioBox.h LibWeb: Begin implementing the HTMLAudioElement for audio playback 2023-06-13 06:14:01 +02:00
AvailableSpace.cpp LibWeb+WebContent: Forbid access to underlying type of CSSPixels 2023-06-13 06:08:27 +02:00
AvailableSpace.h
BlockContainer.cpp
BlockContainer.h
BlockFormattingContext.cpp LibWeb: Resolve used insets for floating elements 2023-07-04 06:43:53 +02:00
BlockFormattingContext.h LibWeb: Fix the x coordinate of a block after a float 2023-06-14 08:30:22 +02:00
Box.cpp LibWeb: Obey CSS aspect-ratio property during layout 2023-06-09 20:37:51 +02:00
Box.h LibWeb: Obey CSS aspect-ratio property during layout 2023-06-09 20:37:51 +02:00
BoxModelMetrics.cpp
BoxModelMetrics.h
BreakNode.cpp
BreakNode.h
ButtonBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
ButtonBox.h
CanvasBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
CanvasBox.h
CheckBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
CheckBox.h
FlexFormattingContext.cpp LibWeb: Don't let items flex to infinite size in column layout 2023-07-06 09:25:48 +02:00
FlexFormattingContext.h LibWeb: Resolve flex item auto cross sizes through aspect ratio 2023-07-05 19:03:20 +02:00
FormAssociatedLabelableNode.h
FormattingContext.cpp LibWeb: Treat non-finite containing block width as zero for percentages 2023-07-01 09:06:49 +02:00
FormattingContext.h LibWeb: Don't use BFC auto height for non-BFC abspos elements 2023-06-20 13:42:31 +02:00
FrameBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
FrameBox.h
GridFormattingContext.cpp LibWeb: Resolve used insets for grid items 2023-07-04 06:43:53 +02:00
GridFormattingContext.h LibWeb: Implement distributing space to tracks beyond limits in GFC 2023-06-22 06:48:12 +02:00
ImageBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
ImageBox.h
ImageProvider.h LibWeb: Have ImageProvider bitmap getter take optional size argument 2023-05-21 07:44:29 +02:00
InlineFormattingContext.cpp LibWeb: Allow IFC to size inline-flex boxes midway through flex layout 2023-06-19 18:51:00 +02:00
InlineFormattingContext.h LibWeb: Allow IFC to size inline-flex boxes midway through flex layout 2023-06-19 18:51:00 +02:00
InlineLevelIterator.cpp LibWeb: Make Layout::TextNode::text_for_rendering() lazily computed 2023-07-03 11:50:58 +02:00
InlineLevelIterator.h
InlineNode.cpp
InlineNode.h
Label.cpp
Label.h
LabelableNode.cpp
LabelableNode.h
LayoutState.cpp LibWeb: Set the definite width flag in set_max_content_width 2023-07-06 08:54:28 +02:00
LayoutState.h LibWeb: Fix table width algorithm when available space is a constraint 2023-06-12 17:51:00 +02:00
LineBox.cpp LibWeb+WebContent: Forbid access to underlying type of CSSPixels 2023-06-13 06:08:27 +02:00
LineBox.h LibWeb: Don't justify text lines that end in a forced break 2023-06-10 21:46:33 +02:00
LineBoxFragment.cpp
LineBoxFragment.h
LineBuilder.cpp LibWeb: Add -libweb-left and -libweb-right text-align values 2023-06-16 06:55:21 +02:00
LineBuilder.h LibWeb: Don't justify text lines that end in a forced break 2023-06-10 21:46:33 +02:00
ListItemBox.cpp
ListItemBox.h
ListItemMarkerBox.cpp LibWeb: Support list-style-position 2023-06-03 05:54:49 +02:00
ListItemMarkerBox.h LibWeb: Support list-style-position 2023-06-03 05:54:49 +02:00
Node.cpp LibWeb: Update anonymous wrappers when applying style changes 2023-07-03 13:37:14 +02:00
Node.h LibWeb: Fix style updates for table box nodes 2023-06-23 16:40:19 +02:00
Progress.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
Progress.h
RadioButton.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
RadioButton.h
ReplacedBox.cpp
ReplacedBox.h LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
SVGBox.cpp
SVGBox.h
SVGFormattingContext.cpp LibWeb: Force paintable to exist for SVG <g> elements 2023-07-02 01:31:18 +02:00
SVGFormattingContext.h
SVGGeometryBox.cpp LibWeb+WebContent: Forbid access to underlying type of CSSPixels 2023-06-13 06:08:27 +02:00
SVGGeometryBox.h
SVGGraphicsBox.cpp
SVGGraphicsBox.h
SVGSVGBox.cpp LibWeb+WebContent: Forbid access to underlying type of CSSPixels 2023-06-13 06:08:27 +02:00
SVGSVGBox.h LibWeb: Support <svg> elements with display: block 2023-05-20 08:49:42 +02:00
SVGTextBox.cpp LibWeb: Implement painting for svg text 2023-06-09 17:20:34 +02:00
SVGTextBox.h LibWeb: Implement painting for svg text 2023-06-09 17:20:34 +02:00
TableFormattingContext.cpp LibWeb: Add vertical border heights to tr 2023-07-01 08:07:49 +02:00
TableFormattingContext.h LibWeb: Don't distribute excess width to constrained columns 2023-06-28 12:17:55 +02:00
TableWrapper.cpp
TableWrapper.h
TextNode.cpp LibWeb: Make Layout::TextNode::text_for_rendering() lazily computed 2023-07-03 11:50:58 +02:00
TextNode.h LibWeb: Make Layout::TextNode::text_for_rendering() lazily computed 2023-07-03 11:50:58 +02:00
TreeBuilder.cpp LibWeb: Fix style updates for table box nodes 2023-06-23 16:40:19 +02:00
TreeBuilder.h
VideoBox.cpp LibWeb: Move "natural size" concept into Layout::Box 2023-06-09 20:37:51 +02:00
VideoBox.h
Viewport.cpp LibWeb: Make StackingContext sorting a lot faster 2023-06-02 15:00:38 +02:00
Viewport.h