Changes

Jump to: navigation, search

Browser History:Redirects

617 bytes added, 17:10, 30 December 2005
How redirecting notifications work from the DocShell/DocLoader level
The state change firing notifies all WebProgressListeners that have been attached to the DocLoader. The DocShell, which is derived from the DocLoader, is registered as an event listener itself. Then we get the OnStateChange event with the <i>source</i> channel (no information is available about the new destination channel or URI), which checks the STATE_IS_DOCUMENT and STATE_REDIRECTING flags. When these flags are set, it calls AddToGlobalHistory with a redirect flag of true.
 
META refreshes are a little more complicated. We would like to be able to detect meta refreshes with a time less than X (where X is something like 20 seconds). These get loaded with LOAD_FLAGS_REPLACE_HISTORY set. Apparently, this can be set for other types of documents as well, and I'm unclear at the moment how to detect meta refreshes, or where to get the refresh time (we probably don't want to worry about refreshes with very long timeouts). In any case, we don't know that the page will refresh until it does, meaning that when this happens we'll want to go back and hide the source page from global history.
=== Proposal ===
202
edits

Navigation menu