This flag is for when we've loaded a URI in a remote type that is not the default
for compatibility reasons (for example related http in the file content process).
So that we can load the history entry in that same process as well.
Convert the singleton HistoryTracker implementation to a per-nsSHistory based
implementation so that it can be bound to a TabGroup.
MozReview-Commit-ID: 7cMtArsO5lQ
--HG--
extra : rebase_source : 3711bc7f7afaa40772035e24270d4fde1d17924a
This will allow the session store to store and restore scroll positions (and pinch zoom on Android) for past session history entries as well, whereas today only the scroll position of the current page is saved.
As a LayoutHistoryState saves its PresStates in a hash table that doesn't allow direct access to its contents if you don't already know the entry's key, we provide a function to iterate over all stored PresStates and retrieve their keys, which can then be used to get access to each individual PresState in turn. Since nsPresState is little more than a fancy struct and we don't want to have to turn it into a full-blown XPCOM-compatible interface, we just pass the scroll/zoom-related values we're interested in as in/out parameters from/to JS via the LayoutHistoryState.
We also require a helper method for initialising an SHEntry's LayoutHistoryState, since normally this doesn't happen until the PresShell wants to capture the history state in it. We on the other hand require a LayoutHistoryState to be present immediately after creation of a fresh SHEntry object, so we can feed it the session store data during history restoration.
MozReview-Commit-ID: FfZf8KDsVWl
***
--HG--
extra : rebase_source : 0b3f729bff3ac24680d6fe8a0fb796979886170b
|refreshURIList| is converted to a an nsIMutableArray as nsISupportsArray is
deprecated. This attribute is only used internally and does not show up in a
textual search of the plugins repo.
nsIMutableArray is used rather than nsIArray in order to support modifying the
array as current users expect.
MozReview-Commit-ID: F0GYVFZarOQ