-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Description
See more context at: #3592
We need to rewrite https://html.spec.whatwg.org/multipage/browsing-the-web.html#traverse-the-history. It invokes the navigate algorithm with Document's URL but we need attach more information, such as request method and request body.
Raw IRC log from https://freenode.logbot.info/whatwg/20180410:
09:06 yhirano__ Regarding whatwg/html #3592, are you talking about html.spec.whatwg.org/multipage/brow…-the-web.html#traverse-the-history? or do you have other call sites in your mind?
09:08 annevk yhirano__: the other one I'm unclear on is reloading
09:08 annevk yhirano__: it says to use the Document object's URL, but it also takes into account other state such as whether the Document object was created as the result of a POST
09:09 annevk yhirano__: which leads me to think it doesn't actually use a URL
09:11 yhirano__ annevk: html.spec.whatwg.org/#traverse-the-history gives a URL to the navigate algorithm. I can give a request with body and method set from the history entry instead, I think. As reloading reuses the previously used resource that will fix the reload case as well. Does it make sense?
09:13 annevk yhirano__: I'm not sure; I suspect that's still wrong for browsers with a "fast" back implementation, where they keep the tree alive
09:16 yhirano__ sorry, what does the "fast" case mean?
09:18 annevk yhirano__: Firefox doesn't always rebuild the node tree
09:18 annevk yhirano__: so you go back and you end up with the same node instances as before
09:18 yhirano__ annevk: So are you talking about the case where the first step is skipped (i.e., Document is alive), right?
09:19 annevk yhirano__: the HTML Standard supports this to some extent, though it's buggy
09:19 annevk yhirano__: I'm not sure what you're referring to; none of these algorithms are particularly fresh for me
09:20 annevk I wish I had managed to refactor these at some point so this wouldn't be such a problem, but I didn't succeed :/