|This is a nsIChannelEventSink implementation that monitors channel redirects.
This has been forked from:
The rest of this module is also more or less forking:
TODO(try to re-unify /remote/ with /devtools code)
|Helper class to coordinate Runtime and Page events.
Events have to be sent in the following order:
This class also handles the special case of Pages going from/to the BF cache.
When you navigate to a new URL, the previous document may be stored in the BF Cache.
All its asynchronous operations are frozen (XHR, timeouts, ...) and a `pagehide` event
is fired for this document. We then navigate to the new URL.
If the user navigates back to the previous page, the page is resurected from the
cache. A `pageshow` event is fired and its asynchronous operations are resumed.
When a page is in the BF Cache, we should consider it as frozen and shouldn't try
being destroyed and the document navigated.
|Observe Firefox tabs as they open and close.
"open" fires when a tab opens.
"close" fires when a tab closes.