||ChildSHistory represents a view of session history from a child process. It
exposes getters for some cached history state, and mutators which are
implemented by communicating with the actual history storage.
NOTE: Currently session history is in transition, meaning that we're still
using the legacy nsSHistory class internally. The API exposed from this class
should be only the API which we expect to expose when this transition is
complete, and special cases will need to call through the LegacySHistory()
||This interface lets you evict a document from the back/forward cache.
||The interface to nsISHentry. Each document or subframe in
Session History will have a nsISHEntry associated with it which will
hold all information required to recreate the document from history
||An interface to the primary properties of the Session History
component. In an embedded browser environment, the nsIWebBrowser
object creates an instance of session history for each open window.
A handle to the session history object can be obtained from
nsIWebNavigation. In a non-embedded situation, the owner of the
session history component must create a instance of it and set
it in the nsIWebNavigation object.
||nsISHistoryListener defines the interface one can implement to receive
notifications about activities in session history and (for reloads) to be
able to cancel them.
A session history listener will be notified when pages are added, removed
and loaded from session history. In the case of reloads, it can prevent them
from happening by returning false from the corresponding callback method.
A session history listener can be registered on a particular nsISHistory
instance via the nsISHistory::addSHistoryListener() method.
Listener methods should not alter the session history. Things are likely to
go haywire if they do.
||SHEntrySharedState holds shared state both in the child process and in the
||FIXME Is this correct?