Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HTML: initial about:blank navigation #15809

Closed
wants to merge 2 commits into from
Closed

Conversation

annevk
Copy link
Member

@annevk annevk commented Mar 13, 2019

This fails in Chrome and Safari, against the HTML Standard.

See also whatwg/html#3267. This bit me today.

Copy link
Member

@domenic domenic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks correct according to the current spec, although if we could simplify this by removing the 1-window-2-document case, that'd be ideal. I'll discuss on the issue tracker.

@annevk
Copy link
Member Author

annevk commented Mar 14, 2019

I guess I'll leave this open for now as it's not yet clear who should align with what. I also wonder if there's a difference when src is already set upon insertion.

And another thing that needs to be sorted out is when the load event is dispatched as that also differs across browsers for some cases.

@gsnedders gsnedders closed this Jan 24, 2020
@gsnedders gsnedders deleted the annevk/initial-about-blank branch January 24, 2020 18:01
@gsnedders gsnedders restored the annevk/initial-about-blank branch January 24, 2020 18:40
@Hexcles Hexcles reopened this Jan 24, 2020
@domenic
Copy link
Member

domenic commented Apr 16, 2021

I think @zetafunction ended up landing a counterpart to this in

promise_test(async t => {
const {iframe, watcher} = setupIframe(t, {});
// Per https://whatwg.org/c/iframe-embed-object.html#process-the-iframe-attributes,
// the task to perform the "iframe load event steps" should still be queued.
// If a browser already fired a load event, the test will fail here since
// EventWatcher will have received an unexpected load event.
iframe.contentWindow.persistedString = 'Hello world!';
iframe.src = 'support/same-origin-iframe.html';
await watcher.wait_for(['load']);
assert_true(iframe.contentWindow.didLoadFrame);
// The <iframe>'s session history has only one Document, and that Document is
// the initial:blank Document. The Window object should be reused per
// https://whatwg.org/c/iframe-embed-object.html#process-the-iframe-attributes.
assert_equals(iframe.contentWindow.persistedString, 'Hello world!');
}, 'synchronously navigate iframe with no initial src.');
so I'll close this. Please reopen if I misunderstood.

@domenic domenic closed this Apr 16, 2021
@annevk annevk deleted the annevk/initial-about-blank branch April 16, 2021 15:57
@annevk
Copy link
Member Author

annevk commented Apr 16, 2021

Thanks, that does look equivalent if not identical to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants