mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-03 07:07:23 +00:00
LibWeb: Implement HTMLFrameElement as a NavigableContainer
NavigableContainer is our home grown concept which already contains the AOs needed for frame and iframe elements. This patch simply aligns our HTMLFrameElement implementation with this class. A couple of notes: 1. The <script> in the <head> element is intentional. The <frameset> element effectively takes the place of the <body> element, and we cannot add a <script> to a <frameset> element. 2. We don't render <frameset> or <frame> at all. Rendering is defined in the following spec: https://html.spec.whatwg.org/multipage/rendering.html#frames-and-framesets 3. If you load the test page in your browser, you won't see anything, regardless of (2). Our test infra adds a <pre> element to the "body" element (which is the <frameset> element here). Such children will never be rendered. In the future, we could come up with something better for our test infra to do, but this isn't important anyways for this test - we can still grab the <pre> element's innerText.
This commit is contained in:
committed by
Tim Ledbetter
parent
7d3ad89603
commit
16def85153
18
Tests/LibWeb/Text/input/HTML/HTMLFrameElement-load.html
Normal file
18
Tests/LibWeb/Text/input/HTML/HTMLFrameElement-load.html
Normal file
@@ -0,0 +1,18 @@
|
||||
<head>
|
||||
<script src="../include.js"></script>
|
||||
<script>
|
||||
asyncTest(done => {
|
||||
let frame = document.getElementById("frame");
|
||||
|
||||
frame.addEventListener("load", e => {
|
||||
println(`frame load: ${e.target.src.split("/").pop()}`);
|
||||
done();
|
||||
});
|
||||
|
||||
frame.src = "../../data/blank.html";
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<frameset>
|
||||
<frame id="frame" />
|
||||
</frameset>
|
||||
Reference in New Issue
Block a user