1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 14:38:11 +00:00
serenity/Userland/Libraries/LibWeb/Layout
Andreas Kling fa64a7f6cc LibWeb: Relax "all children must be either inline or block" invariant
This was implemented too rigidly, which made it impossible to place
floats correctly when they occurred in inline flow.

The new invariant is "all in-flow children must be either inline or
block". Out-of-flow children like floating and absolutely positioned
boxes are ignored when deciding when to generate anonymous boxes.
2022-03-22 19:26:51 +01: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: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +01:00
BlockFormattingContext.h LibWeb: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +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 Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02: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: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +01:00
FlexFormattingContext.h LibWeb: Add a debug helper to dump current state of an FFC 2022-03-13 00:04:51 +01:00
FormAssociatedLabelableNode.h LibWeb: Refactor all LabelableNode subclasses + input event handling :^) 2022-03-16 00:38:31 +01:00
FormattingContext.cpp LibWeb: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +01:00
FormattingContext.h LibWeb: Rewrite CSS float implementation to use offset-from-edge 2022-03-18 15:18:48 +01:00
FormattingState.cpp LibWeb: Make Layout::FormattingState copies shallow 2022-03-13 00:04:51 +01:00
FormattingState.h LibWeb: Give FormattingState a reference to its root state 2022-03-18 15:18:48 +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: Remove a bunch of no-longer needed #includes 2022-03-11 00:21:49 +01:00
ImageBox.h LibWeb: Make Paintable ref-counted 2022-03-11 00:21:49 +01:00
InitialContainingBlock.cpp LibWeb: Build stacking context tree lazily 2022-03-21 13:03:33 +01:00
InitialContainingBlock.h LibWeb: Build stacking context tree lazily 2022-03-21 13:03:33 +01:00
InlineFormattingContext.cpp LibWeb: Assign the used top/bottom border widths to inline-block boxes 2022-03-20 13:36:45 +01: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 InlineLevelIterator emit absolutely positioned items 2022-03-08 00:19:49 +01:00
InlineLevelIterator.h LibWeb: Make InlineLevelIterator emit absolutely positioned items 2022-03-08 00:19:49 +01: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 Libraries: Use default constructors/destructors in LibWeb 2022-03-17 17:23:49 +00:00
LineBoxFragment.cpp LibWeb: Move text fragment painting to PaintableWithLines 2022-03-16 23:13:05 +01:00
LineBoxFragment.h LibWeb: Move text fragment painting to PaintableWithLines 2022-03-16 23:13:05 +01:00
LineBuilder.cpp LibWeb: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +01:00
LineBuilder.h LibWeb: Make LineBuilder aware of the current LayoutMode 2022-03-18 15:18:48 +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: Move Layout::Box::is_out_of_flow() to Layout::Node 2022-03-22 19:26:51 +01:00
Node.h LibWeb: Move Layout::Box::is_out_of_flow() to Layout::Node 2022-03-22 19:26:51 +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: Translate table cells by their top left border 2022-03-21 21:55:21 +01:00
TableFormattingContext.h LibWeb: Start making our layout system "transactional" 2022-02-21 18:35:12 +01: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: Rename the LayoutMode enum values and explain them 2022-03-19 15:46:15 +01:00
TextNode.h LibWeb: Move text fragment painting to PaintableWithLines 2022-03-16 23:13:05 +01:00
TreeBuilder.cpp LibWeb: Relax "all children must be either inline or block" invariant 2022-03-22 19:26:51 +01:00
TreeBuilder.h LibWeb: Add missing headers 2021-10-20 09:20:18 +01:00