Andreas Kling
ffcbe8f0de
LibHTML: Start building the style tree.
...
Walk the DOM and construct a parallel style tree that points back to the DOM
and has the relevant CSS property values hanging off of them.
The values are picked based on naive selector matching. There's no cascade
or specificity taken into account yet.
2019-06-28 21:25:44 +02:00
Andreas Kling
e971f5604c
LibHTML: Implement some very simple selector matching.
...
We walk the entire DOM and check all selectors against all elements. Only
id, class and tag name are checked right now. There's no ancestor stack
or compound selectors. All in good time :^)
2019-06-27 20:40:21 +02:00
Andreas Kling
2b4eea5a50
LibHTML: Start fleshing out a StyleResolver class.
...
This will be responsible for matching selectors and creating LayoutStyle
objects for the document and its elements.
2019-06-27 17:47:59 +02:00
Andreas Kling
891e668e35
LibHTML: Add an empty CSS parser.
2019-06-21 20:55:41 +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
1f51c2b7da
LibHTML: Create some subdirectories.
2019-06-15 23:41:15 +02:00
Andreas Kling
8a0e21b22b
LibHTML: Start fleshing out a basic layout tree.
2019-06-15 22:49:44 +02:00
Andreas Kling
581d6b00c8
LibHTML: Start working on a very simplified HTML parser.
2019-06-15 20:21:57 +02:00
Andreas Kling
a67e823838
LibHTML: Start working on a simple HTML library.
...
I'd like to have rich text, and we might as well use HTML for that. :^)
2019-06-15 18:55:47 +02:00