render: DOM to layout tree and per-node geometry

Walk a live DomTree, compute each element's style (tag UA defaults plus
inline style), build a taffy layout tree, and return border-box geometry
keyed by NodeId. Block/flex structure, explicit sizes, and the box model
are correct; text nodes do not yet contribute to size (inline/text
layout lands with the paint phase).

This completes the layout core: a real DOM now produces real geometry,
pure Rust, behind the opt-in render crate. JS exposure is next.
This commit is contained in:
SGavrl committed 2026-06-30 16:30:18 +00:00
1 parent 5ed34ea8d4
commit f0f9b048d0
3 files changed
+132 -1

No files matched your search

+1
View File
@@ -8,6 +8,7 @@ description = "Optional scoped render layer for Obscura: layout (taffy) and, wit
[dependencies]
taffy = { workspace = true }
obscura-dom = { workspace = true }
[lib]
path = "src/lib.rs"