I'm not exactly sure what you mean in the first case. How is the title change hidden from the DOM? When you call document.title = "new title", then the title does change in the DOM and in the UI.<br><br>About your second question, I think you misunderstood it. As you said, it says:<br>
"Then, if the current entry was removed in the previous step, the
current entry must be set to the last entry for that Document object in
the session history."<br><br>In other words, the last entry in the session history must now equal what was the current entry. It's just worded a bit confusingly. A better way of saying it would be:<br><br>"Then, if the current entry was removed in the previous step, the current entry must now be pushed onto the session history". <br>
<br>Marius Gundersen<br><br><br><div class="gmail_quote">On Thu, Nov 12, 2009 at 12:48 PM, Brady Eidson <span dir="ltr"><<a href="mailto:beidson@apple.com">beidson@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
For reference see section 6.10.2 of the spec.<br>
<br>
In getting an implementation for pushState(), replaceState(), and clearState() going I've had a few concerns.<br>
<br>
pushState() and replaceState():<br>
<br>
When pushState() or replaceState() are called with a URL argument, the document's current address is changed.  This has a lot of side effects in that it is exposed to scripts and the DOM and most modern user agents would update their UI to show this.<br>

<br>
However, this same section takes care to point out "The title is purely advisory. User agents might use the title in the user interface."  Indeed, many user agents would show the title of the current page at the top of the browser window or tab, in their back/forward list, and possibly in their global persistent history.<br>

<br>
But unlike the URL which actually changes in the Document object and is therefore exposed to the DOM, this "purely advisory" title change is hidden from the DOM.  I'm questioning the reasoning behind this distinction and am curious if it was intentional or not.<br>

<br>
clearState():<br>
<br>
The following text describes clearState():<br>
<br>
"When this method is invoked, the user agent must remove from the session history all the entries from the first state object entry for that Document object up to the last entry that references that same Document object, if any.<br>

<br>
Then, if the current entry was removed in the previous step, the current entry must be set to the last entry for that Document object in the session history."<br>
<br>
Imagine the following scenario:<br>
<br>
A document has 5 state entries.<br>
They each have a different URL as follows:  <a href="http://www.example.com/page.html?1" target="_blank">http://www.example.com/page.html?1</a>, <a href="http://www.example.com/page.html?2" target="_blank">http://www.example.com/page.html?2</a>, <a href="http://www.example.com/page.html?3" target="_blank">http://www.example.com/page.html?3</a>, <a href="http://www.example.com/page.html?4" target="_blank">http://www.example.com/page.html?4</a>, and <a href="http://www.example.com/page.html?5" target="_blank">http://www.example.com/page.html?5</a><br>

The current entry is the 3rd entry.<br>
A script calls "clearState()" so these entries are all cleared out, including the current entry.<br>
Since the current entry was removed, the current entry after the clearState() call is changed to be the last entry for the Document.<br>
<br>
My reading of the spec is that after clearState() returns, the entries 1-4 will be gone completely, the state object for entry 5 will have been cleared, and entry 5 will now be the current entry.<br>
<br>
This has the side effect of the URL for the current entry - <a href="http://www.example.com/page.html?5" target="_blank">http://www.example.com/page.html?5</a> - not matching the current URL of the document - <a href="http://www.example.com/page.html?3" target="_blank">http://www.example.com/page.html?3</a><br>

<br>
Is my understanding of what the current entry should be correct?<br>
If not, what am I missing?<br>
And is the disjoint between the Document's URL and the current entries URL correct?<br>
If not, what am I missing?<br>
<br>
Thanks,<br>
<font color="#888888">~Brady<br>
</font></blockquote></div><br>