Session Restore: Difference between revisions

→‎Preferences: Changed link from http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#750 to https://dxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#828 ref comment in account request
(→‎Privacy: JSON vs Javascript)
(→‎Preferences: Changed link from http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#750 to https://dxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#828 ref comment in account request)
 
(19 intermediate revisions by 9 users not shown)
Line 29: Line 29:
== Preferences ==
== Preferences ==


* browser.sessionstore.enabled (bool) - Activate the service. Default is true.
See [https://dxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#828 the source] for currently available settings and their default values.
 
* browser.sessionstore.enabled (bool) - Activate the service. Default is true. May not appear in about:config until changed. Valid for Firefox 2 and 3, superseded since Version 3.5.
* browser.sessionstore.interval (integer) - minimal interval between saving  operations in milliseconds. Default is 10000.
* browser.sessionstore.max_resumed_crashes (integer) - Number of crashes that can occur before the about:sessionrestore page is displayed. Default is 1. So the user is asked after the second crash which pages he wants to restore.
* browser.sessionstore.resume_from_crash (bool) - Resume sessions post-crash. Default is true.
* browser.sessionstore.resume_from_crash (bool) - Resume sessions post-crash. Default is true.
* browser.sessionstore.resume_session_once (bool) - Resume session at the next application start, but not again. Default is false. This is used for restarting the browser after application updates and extension installation.
* browser.sessionstore.resume_session_once (bool) - Resume session at the next application start, but not again. Default is false. This is used for restarting the browser after application updates and extension installation.
* browser.startup.page (int) - What is displayed when Firefox starts: 0 = blank page; 1 = homepage; 3 = previous session. Default is 1. (Note: This preference is exposed in the Startup section of the Main pane of the Options/Preferences dialog.)
* browser.startup.page (int) - What is displayed when Browser starts: 0 = blank page; 1 = homepage; 3 = previous session. Default is 1. (Note: Firefox exposes this preference in the Startup section of the Main pane of the Options/Preferences dialog.)


= Technical Design =
= Technical Design =
Line 41: Line 45:


* Code location: http://lxr.mozilla.org/seamonkey/source/browser/components/sessionstore/
* Code location: http://lxr.mozilla.org/seamonkey/source/browser/components/sessionstore/
* Data location: File sessionstore.js in profile directory, backup in sessionstore.bak


== Data to be saved ==
== Data to be saved ==
Line 68: Line 73:
The saved session data is also cleared upon receiving the "browser:purge-session-history" notification.
The saved session data is also cleared upon receiving the "browser:purge-session-history" notification.


The data is stored on disk as a serialized javascript data structure (though it may be converted to JSON once that becomes natively supported by Gecko/Spidermonkey). An open question is to whether this should be encrypted in some manner. See the Discussion page for more ideas about this.
The data is stored on disk as a serialized javascript data structure (though it's possible that it will be converted to JSON once that becomes natively supported by Gecko/Spidermonkey). An open question is to whether this should be encrypted in some manner. See the Discussion page for more ideas about this.


= To-do =
= To-do =
Line 92: Line 97:
* Should form state include saving checkbox and selectbox state as well as text input?
* Should form state include saving checkbox and selectbox state as well as text input?


= Misc =
= User-friendly documentation =


* [Ooops, this doesn't work, the softlink is deleted and replaced by the file.] <s> If you are unfortunate to be using one of the older Firefox 2.0 versions on Solaris, setting browser.sessionstore.enable to false may not work. A workaround is to cd to the directory containing your prefs.js, delete sessionstore.js, and then make a symbolic link named sessionstore.js that points to /dev/null. This fools Firefox into believing there are no saved sessions.</s>
See this Knowledge Base entry:  http://support.mozilla.com/en-US/kb/Session+Restore


== Relevant Bugs ==
== Relevant Bugs ==
Line 102: Line 107:
* [https://bugzilla.mozilla.org/show_bug.cgi?id=356050 bz356050]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=356050 bz356050]
* [https://bugzilla.mozilla.org/show_bug.cgi?id=328154 bz328154] - Tracking bug for feature inclusion in Fx2
* [https://bugzilla.mozilla.org/show_bug.cgi?id=328154 bz328154] - Tracking bug for feature inclusion in Fx2
 
* [https://bugzilla.mozilla.org/show_bug.cgi?id=343876 Session restore when all last sessions tabs were closed should obey user homepage choice for the initial blank tab]
Older:
Older:


Account confirmers, Anti-spam team, Bureaucrats, canmove, Confirmed users, Module owners and peers, smwadministrator, smwcurator, Administrators, MozillaWiki team, Widget editors
8,213

edits