Andreas Kling
7eef69ad4b
LibHTML: Refactor to go from DOM -> styled tree -> layout tree.
...
Frame::layout() drives everything now, it takes the DOM contained in the
frame and puts it through the tree transformations.
2019-06-29 21:42:07 +02:00
Andreas Kling
8adae51b35
LibHTML: Add a simple TreeNode<T> template for making trees.
...
We'll be making a lot of trees here, so let's share code during bootstrap.
Eventually some of these classes are gonna want custom trees but for now
we can just fit them all into the same clothes.
2019-06-25 19:46:01 +02:00
Andreas Kling
550b0b062b
AK: Rename RetainPtr.h => RefPtr.h, Retained.h => NonnullRefPtr.h.
2019-06-21 18:45:59 +02:00
Andreas Kling
90b1354688
AK: Rename RetainPtr => RefPtr and Retained => NonnullRefPtr.
2019-06-21 18:37:47 +02:00
Andreas Kling
77b9fa89dd
AK: Rename Retainable => RefCounted.
...
(And various related renames that go along with it.)
2019-06-21 15:30:03 +02:00
Andreas Kling
2e2b97dc8a
LibHTML: Add layout() overrides for LayoutText and LayoutBlock.
2019-06-20 23:00:26 +02:00
Andreas Kling
0db2f3cbe6
LibHTML: Add a Frame class, start fleshing out recursive layout.
...
Layout is initiated from Frame::layout(). It makes the document's layout
node as wide as the frame, and then we'll take it from there.
2019-06-16 21:35:03 +02:00
Andreas Kling
e3d3e431dc
LibHTML: Add a LayoutStyle object (computed style for a LayoutNode.)
2019-06-16 13:44:09 +02:00
Andreas Kling
fec098b5cd
LibHTML: Give LayoutNodes a rect.
...
Also improve the layout tree dump format somewhat.
2019-06-16 12:26:24 +02:00
Andreas Kling
1f51c2b7da
LibHTML: Create some subdirectories.
2019-06-15 23:41:15 +02:00