1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:57:35 +00:00

LibWeb: Allow CSS floating objects to flow across multiple lines

If we run out of horizontal space when placing floating objects,
we now perform a "break" and continue with a new line of floats
below the bottommost margin edge of the current line.

This is definitely not 100% to-spec yet, but a huge improvement
on ACID1 already. :^)
This commit is contained in:
Andreas Kling 2022-01-23 01:19:28 +01:00
parent 0ea438e45b
commit f5c5efa067
2 changed files with 88 additions and 42 deletions

View file

@ -56,8 +56,14 @@ private:
void apply_transformations_to_children(Box&);
enum class FloatSide {
Left,
Right,
};
struct FloatSideData {
Vector<Box&> boxes;
float y_offset { 0 };
};
FloatSideData m_left_floats;