components.conf |
|
493 |
content |
|
|
GlobalState.sys.mjs |
Module that contains global session data.
|
1850 |
jar.mn |
|
398 |
metrics.yaml |
|
3410 |
moz.build |
|
1316 |
PageWireframes.sys.mjs |
Returns the wireframe object for the current index of the session history
for the given tab. The wireframe will only exist with browser.history.collectWireframes.
@param {Object} tab
@return {Object} wireframe
See dom/webidl/Document.webidl for the Wireframe dictionary
|
3820 |
RecentlyClosedTabsAndWindowsMenuUtils.sys.mjs |
@param {Window} win
@returns {Map<string, TabGroupStateData>}
Map of closed tab groups keyed by tab group ID
|
17549 |
RunState.sys.mjs |
This module keeps track of SessionStore's current run state. We will
always start out at STATE_STOPPED. After the session was read from disk and
the initial browser window has loaded we switch to STATE_RUNNING. On the
first notice that a browser shutdown was granted we switch to STATE_QUITTING.
|
3341 |
SessionCookies.sys.mjs |
The external API implemented by the SessionCookies module.
|
7801 |
SessionFile.sys.mjs |
Implementation of all the disk I/O required by the session store.
This is a private API, meant to be used only by the session store.
It will change. Do not use it for any other purpose.
Note that this module depends on SessionWriter and that it enqueues its I/O
requests and never attempts to simultaneously execute two I/O requests on
the files used by this module from two distinct threads.
Otherwise, we could encounter bugs, especially under Windows,
e.g. if a request attempts to write sessionstore.js while
another attempts to copy that file.
|
16940 |
SessionLogger.sys.mjs |
|
2823 |
SessionMigration.sys.mjs |
Convert the original session restore state into a minimal state. It will
only contain:
- open windows
- with tabs
- with history entries with only title, url, triggeringPrincipal
- with pinned state
- with tab group info (hidden + group id)
- with selected tab info
- with selected window info
The complete state is then wrapped into the "about:welcomeback" page as
form field info to be restored when restoring the state.
|
3030 |
SessionSaver.sys.mjs |
Minimal interval between two save operations (in milliseconds).
To save system resources, we generally do not save changes immediately when
a change is detected. Rather, we wait a little to see if this change is
followed by other changes, in which case only the last write is necessary.
This delay is defined by "browser.sessionstore.interval".
Furthermore, when the user is not actively using the computer, webpages
may still perform changes that require (re)writing to sessionstore, e.g.
updating Session Cookies or DOM Session Storage, or refreshing, etc. We
expect that these changes are much less critical to the user and do not
need to be saved as often. In such cases, we increase the delay to
"browser.sessionstore.interval.idle".
When the user returns to the computer, if a save is pending, we reschedule
it to happen soon, with "browser.sessionstore.interval".
|
12239 |
SessionStartup.sys.mjs |
Session Storage and Restoration
Overview
This service reads user's session file at startup, and makes a determination
as to whether the session should be restored. It will restore the session
under the circumstances described below. If the auto-start Private Browsing
mode is active, however, the session is never restored.
Crash Detection
The CrashMonitor is used to check if the final session state was successfully
written at shutdown of the last session. If we did not reach
'sessionstore-final-state-write-complete', then it's assumed that the browser
has previously crashed and we should restore the session.
Forced Restarts
In the event that a restart is required due to application update or extension
installation, set the browser.sessionstore.resume_session_once pref to true,
and the session will be restored the next time the browser starts.
Always Resume
This service will always resume the session if the integer pref
browser.startup.page is set to 3.
|
15336 |
SessionStore.sys.mjs |
|
274559 |
SessionStoreFunctions.sys.mjs |
|
2019 |
SessionWriter.sys.mjs |
We just started (we haven't written anything to disk yet) from
`Paths.clean`. The backup directory may not exist.
|
12520 |
StartupPerformance.sys.mjs |
Once we have finished restoring initial tabs, we broadcast on this topic.
|
8843 |
TabAttributes.sys.mjs |
|
1151 |
TabGroupState.sys.mjs |
@typedef {object} TabGroupStateData
State of a tab group inside of an open window.
@property {string} id
Unique ID of the tab group.
@property {string} name
User-defined name of the tab group.
@property {"blue"|"purple"|"cyan"|"orange"|"yellow"|"pink"|"green"|"gray"|"red"} color
User-selected color name for the tab group's label/icons.
@property {boolean} collapsed
Whether the tab group is collapsed or expanded in the tab strip.
|
5487 |
TabState.sys.mjs |
Module that contains tab state collection methods.
|
6466 |
TabStateCache.sys.mjs |
A cache for tabs data.
This cache implements a weak map from tabs (as XUL elements)
to tab data (as objects).
Note that we should never cache private data, as:
- that data is used very seldom by SessionStore;
- caching private data in addition to public data is memory consuming.
|
4880 |
TabStateFlusher.sys.mjs |
A module that enables async flushes. Updates from frame scripts are
throttled to be sent only once per second. If an action wants a tab's latest
state without waiting for a second then it can request an async flush and
wait until the frame scripts reported back. At this point the parent has the
latest data and the action can continue.
|
5102 |
test |
|
|
triage.json |
|
3313 |