Name Description Size
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