Files
rust_browser/tests/goldens/expected/230-quote-keywords.layout.txt
Zachary D. Rowitsch d5234cf546 Implement HTML5 tree builder insertion modes with code review fixes (§13.2.6)
Refactor tree_builder.rs into module directory with 7 files implementing all
23 insertion modes per WHATWG HTML §13.2.6.4 as an explicit state machine.
Includes active formatting elements list with Noah's Ark clause, scope
checking for all 5 scope types, context-sensitive fragment parsing, and
iterative token reprocessing via ProcessResult enum.

Code review fixes: fix formatting element end tag truncation bug (save
node_id before truncate), replace manual element creation in catch-all
StartTag with insert_element_maybe_self_closing, add skip_next_newline for
pre/listing/textarea per spec, add QuirksMode to Document with basic DOCTYPE
detection, refactor all 23 handlers from Token to &Token to eliminate clone
per dispatch, fix self_closing handling for pre/listing/textarea/plaintext,
improve golden test 276 fixture coverage and foster-parent test assertion.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-14 22:12:19 -04:00

106 lines
3.9 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
LayoutBox node=#1 tag=html box=block
content: (0, 0, 800, 67.2)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#8 tag=body box=block
content: (8, 16, 784, 35.2)
padding: 0 0 0 0
border: 0 0 0 0
margin: 8 8 8 8
LayoutBox node=#10 tag=p box=block
content: (8, 16, 784, 19.2)
padding: 0 0 0 0
border: 0 0 0 0
margin: 16 0 16 0
inline_context: 1 lines, height=19.2, max_width=161.23349
line[0]: rect=(8, 16, 161.23349, 19.2) fragments=10
frag[0]: rect=(8, 17.6, 20.334803, 16) text="She" start=false end=false
frag[1]: rect=(31.389133, 17.6, 22.472834, 16) text="said" start=false end=false
frag[2]: rect=(56.9163, 17.6, 4.2173276, 16) text="“" start=true end=true
frag[3]: rect=(61.13363, 17.6, 27.05433, 16) text="hello" start=true end=true
frag[4]: rect=(91.24229, 17.6, 2.0558002, 16) text="" start=true end=true
frag[5]: rect=(93.29809, 17.6, 31.447872, 16) text="world" start=true end=true
frag[6]: rect=(124.74596, 17.6, 2.0558002, 16) text="" start=true end=true
frag[7]: rect=(126.80176, 17.6, 4.2173276, 16) text="”" start=true end=true
frag[8]: rect=(134.07343, 17.6, 11.348018, 16) text="to" start=false end=false
frag[9]: rect=(148.47578, 17.6, 20.75771, 16) text="me." start=false end=false
LayoutBox node=#11 tag=anonymous box=anon
content: (0, -8, 48.9163, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: "She said "
LayoutBox node=#12 tag=q box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#18 tag=anonymous box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#19 tag=anonymous box=anon
content: (0, -8, 4.2173276, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: "“"
LayoutBox node=#13 tag=anonymous box=anon
content: (0, -8, 30.108662, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: "hello "
LayoutBox node=#14 tag=q box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#20 tag=anonymous box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#21 tag=anonymous box=anon
content: (0, -8, 2.0558002, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: ""
LayoutBox node=#15 tag=anonymous box=anon
content: (0, -8, 31.447872, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: "world"
LayoutBox node=#22 tag=anonymous box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#23 tag=anonymous box=anon
content: (0, -8, 2.0558002, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: ""
LayoutBox node=#24 tag=anonymous box=inline
content: (0, -8, 0, 0)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
LayoutBox node=#25 tag=anonymous box=anon
content: (0, -8, 4.2173276, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: "”"
LayoutBox node=#16 tag=anonymous box=anon
content: (0, -8, 38.21439, 16)
padding: 0 0 0 0
border: 0 0 0 0
margin: 0 0 0 0
text: " to me."