Summary: historically in Gecko document.open created a new global and new session history entry (unless "replace" was passed). We also stored the written data in a "wyciwyg" cache entry so it could participate meaningfully in session history. I plan to change these behaviors and simplify the behavior of document.open to align with the spec and other browsers. All the "wyciwyg" bits in the tree are being removed in the process.

Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1489308

Link to standard: https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#document-open-steps

Platforms: all

Target release: 67

Devtools bug: none needed.

Other engines: already implement the model we're aligning with, generally.

web-platform-tests: http://w3c-test.org/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/

There is a certain amount of compat risk here, since this is changing a very longstanding behavior. I'm hoping that by aligning with the spec (except for a few edge cases like calling document.open() on a document whose iframe has been removed from the DOM that we used to no-op and continue to no-op) and other browsers we keep the risk pretty low.

-Boris
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to