ladybird/Libraries/LibWeb/Layout
Jelle Raaijmakers f340f8682b
Some checks are pending
CI / Lagom (arm64, Sanitizer_CI, false, macos-15, macOS, Clang) (push) Waiting to run
CI / Lagom (x86_64, Fuzzers_CI, false, ubuntu-24.04, Linux, Clang) (push) Waiting to run
CI / Lagom (x86_64, Sanitizer_CI, false, ubuntu-24.04, Linux, GNU) (push) Waiting to run
CI / Lagom (x86_64, Sanitizer_CI, true, ubuntu-24.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-24.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Label PRs with merge conflicts / auto-labeler (push) Waiting to run
Push notes / build (push) Waiting to run
LibWeb: Do not clear float sides for floating boxes with clear: ..
We used to always clear the side data after encountering a box with
`clear: ..`, but this is not the right thing to do if that same box also
has `float: ..` set. For example, with `clear: right` and `float: left`
it might be that the next box still wants to clear the right side, and
since the previous box is floating it did not push the next box down far
enough to justify clearing the side data at that point.

This changes the logic to only clear the float side if the clearing box
itself is not floating. We also no longer clear the opposite side after
placing a floating box; that doesn't seem to be necessary anymore.

Fixes #4102.
2025-03-27 00:56:56 +00:00
..
AudioBox.cpp LibWeb: Hide audio element when controls is not set 2025-01-04 11:47:09 +00:00
AudioBox.h LibWeb: Hide audio element when controls is not set 2025-01-04 11:47:09 +00:00
AvailableSpace.cpp
AvailableSpace.h
BlockContainer.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
BlockContainer.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
BlockFormattingContext.cpp LibWeb: Do not clear float sides for floating boxes with clear: .. 2025-03-27 00:56:56 +00:00
BlockFormattingContext.h LibWeb: Replace 1px iteration in y_for_float_to_be_inserted_here() 2025-03-26 13:51:11 +00:00
Box.cpp LibWeb: Cache "has size containment" flag in Layout::Box 2025-03-26 17:52:02 +00:00
Box.h LibWeb: Cache "has size containment" flag in Layout::Box 2025-03-26 17:52:02 +00:00
BreakNode.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
BreakNode.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CanvasBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
CanvasBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01: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: Correctly calculate static position rect when absolutely 2025-03-17 15:55:06 +01:00
FlexFormattingContext.h LibWeb: Use cached UsedValues pointer in FlexFormattingContext more 2025-02-12 00:39:36 +01:00
FormAssociatedLabelableNode.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
FormattingContext.cpp LibWeb: Delete parent state pointer in LayoutState 2025-03-26 12:08:09 +00:00
FormattingContext.h LibWeb: Resolve "height: auto" using preferred aspect ratio if possible 2025-03-15 13:51:16 +01:00
GridFormattingContext.cpp LibWeb: Don't assume length-percentage is always a length [GFC] 2025-03-24 18:59:21 +01:00
GridFormattingContext.h LibWeb: Delete const from GridDimension function parameters in GFC 2025-03-21 15:19:39 +01:00
ImageBox.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
ImageBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ImageProvider.cpp
ImageProvider.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
InlineFormattingContext.cpp LibWeb: Do not clear float sides for floating boxes with clear: .. 2025-03-27 00:56:56 +00:00
InlineFormattingContext.h
InlineLevelIterator.cpp LibWeb: Resolve used vertical margins on inline elements 2025-02-22 20:02:16 +01:00
InlineLevelIterator.h LibWeb: Layout/Shape font-variant-* css properties 2024-12-17 19:07:13 +01:00
InlineNode.cpp LibWeb: Support inserting non-inline elements into inline elements 2025-01-23 09:33:10 +01:00
InlineNode.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
Label.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
Label.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
LabelableNode.cpp
LabelableNode.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
LayoutState.cpp LibWeb: Delete parent state pointer in LayoutState 2025-03-26 12:08:09 +00:00
LayoutState.h LibWeb: Delete parent state pointer in LayoutState 2025-03-26 12:08:09 +00: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: Exclude trailing whitespace from line width when placing floats 2025-03-26 19:35:38 +00:00
LineBox.h LibWeb: Exclude trailing whitespace from line width when placing floats 2025-03-26 19:35:38 +00:00
LineBoxFragment.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
LineBoxFragment.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
LineBuilder.cpp LibWeb: Exclude trailing whitespace from line width when placing floats 2025-03-26 19:35:38 +00:00
LineBuilder.h
ListItemBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ListItemBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ListItemMarkerBox.cpp LibWeb: Support reversed ordered lists 2025-02-21 04:23:28 +00:00
ListItemMarkerBox.h LibWeb: Support reversed ordered lists 2025-02-21 04:23:28 +00:00
NavigableContainerViewport.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
NavigableContainerViewport.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
Node.cpp LibWeb: Generate an enum for generated pseudo-elements 2025-03-24 09:49:50 +00:00
Node.h LibWeb: Generate an enum for generated pseudo-elements 2025-03-24 09:49:50 +00: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: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
ReplacedBox.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05: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 AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
SVGForeignObjectBox.cpp LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGForeignObjectBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
SVGFormattingContext.cpp LibWeb: Fix layout mode propagation in SVGFormattingContext 2025-03-09 18:40:37 +01: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 AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05: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 AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05: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: Correctly calculate static position rect when absolutely 2025-03-17 15:55:06 +01:00
TableFormattingContext.h AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
TableGrid.cpp LibWeb: Handle interleaved table-row and table-row-group boxes 2025-02-26 13:50:01 +01:00
TableGrid.h LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +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 LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
TextNode.h LibWeb: Reduce number of recompiled files for display list headers 2025-02-23 10:14:39 -05:00
TreeBuilder.cpp LibWeb: Generate an enum for generated pseudo-elements 2025-03-24 09:49:50 +00: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: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
VideoBox.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00
Viewport.cpp LibWeb: Exclude inert elements from find in page queries 2025-02-21 12:41:57 +00:00
Viewport.h LibWeb: Make CSS::ComputedProperties GC-allocated 2024-12-22 10:12:49 +01:00