Commit graph

22 commits

Author SHA1 Message Date
Ben Wiederhake
dee26ca5cd LibWeb: Add missing headers 2021-10-20 09:20:18 +01:00
Andreas Kling
1d0c4a07ff LibWeb: Add spec comments to FFC layout algorithm step 5 2021-10-13 23:56:26 +02:00
Andreas Kling
d37e5dc64c LibWeb: Add FFC::flex_container() and use throughout
Since FFC is only ever run() on the flex container, we can assume (but
verify) that the run box is the flex container and use an accessor
throughout. The end result: less parameter passing.
2021-10-13 23:56:26 +02:00
Andreas Kling
1580c59f39 LibWeb: Make FFC line and item vectors members instead of locals
This gives all member functions access to these vectors without having
to pass them as arguments.
2021-10-13 23:56:26 +02:00
Andreas Kling
9359df4be9 LibWeb: Move FFC layout algorithm step 16 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
f401794d23 LibWeb: Move FFC layout algorithm step 15 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
6d433c99f4 LibWeb: Move FFC layout algorithm step 14 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
e590e17b8a LibWeb: Move FFC layout algorithm step 12 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
176f1ad214 LibWeb: Move FFC layout algorithm step 11 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
8f027b4792 LibWeb: Move FFC layout algorithm step 8 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
3402584646 LibWeb: Move FFC layout algorithm step 7 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
0c0df78030 LibWeb: Move FFC layout algorithm step 6 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
0fd25fcbbc LibWeb: Move FFC layout algorithm step 5 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
fa7bbc602d LibWeb: Move FFC layout algorithm step 4 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
3375953918 LibWeb: Move FFC layout algorithm step 3 to a separate function 2021-10-13 23:56:26 +02:00
Andreas Kling
c19358e157 LibWeb: Move FFC layout algorithm step 2 into a separate function
Determining the available main and cross space is now done by a separate
function. The signature is a little bit hairy since this function
computes some things that are used by subsequent algorithm steps.

Factoring can definitely be improved further.
2021-10-13 23:56:26 +02:00
Andreas Kling
cd6b97ab9e LibWeb: Turn FlexFormattingContext helper lambdas into member functions
Continuing on the quest towards making FlexFormattingContext readable.
2021-10-13 23:56:26 +02:00
Andreas Kling
674b6f5385 LibWeb: Call the FlexFormattingContext context box "flow_container"
This is what the spec calls it and makes the code much less ambiguous.
2021-10-13 23:56:26 +02:00
Andreas Kling
ca02d112a5 LibWeb: Split out FFC's "generate anonymous flex items" to a function
Let's begin splitting the FlexFormattingContext layout algorithm into
separate functions to make it more manageable.
2021-10-13 23:56:26 +02:00
Sam Atkins
2844f89a83 LibWeb: Implement "out-of-flow" property of Layout Box
In some situations, a layout box should not participate in the standard
layout process, for example when set to `position: absolute`.
2021-09-15 13:55:25 +02:00
Brian Gianforcaro
1682f0b760 Everything: Move to SPDX license identifiers in all files.
SPDX License Identifiers are a more compact / standardized
way of representing file license information.

See: https://spdx.dev/resources/use/#identifiers

This was done with the `ambr` search and replace tool.

 ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-22 11:22:27 +02:00
Andreas Kling
fd7920fa8f LibWeb: Add a very naive Layout::FlexFormattingContext :^)
This is very dumb and only lays out its child boxes on a horizontal
line with their shrink-to-fit widths.

You have to start somewhere! :^)
2021-01-18 20:20:13 +01:00