Open Bug 1507451 Opened 6 years ago Updated 2 years ago

Add feature to restore session on a case by case basis

Categories

(Firefox :: Session Restore, enhancement, P4)

63 Branch
enhancement

Tracking

()

UNCONFIRMED

People

(Reporter: mozilla, Unassigned)

References

(Blocks 1 open bug)

Details

This is a request for a small but very useful feature.

Observation
-----------

There are two common working scenarios when closing Firefox:

1. You have finished your work, want to close all tabs and windows and
   want to start with a fresh window the next time.

2. You have to interrupt your work and want to continue the next time,
   with all current tabs and windows open again.

This means it would be useful to have an option to decide whether to
restore this session at the next start or not, at the point of time
when Firefox is closed. When Firefox comes up with some open tabs or
windows the next time, you are automatically reminded that you have to
continue some prior work.

Of course you can open the last session manually at the next start.
But this means you have to remember that you still have some more work
to do. So if there are several days between closing Firefox and
re-starting it again, e.g. a week-end or even longer, then you may
have forgotten what you did last time. So you may lose some valuable
tabs if you do not re-open the last session manually. But the time when
this should be decided, is not the time, when Firefox is opened. It is
the time when Firefox is closed.

So contrary to the option "Always restore last session" at start
(auto-sessionrestore), which only allows to re-open the session always
or never, this would be on a case by case basis.


Implementation
--------------

My suggestion would be to add a button "Restore session at next start"
or similar to the dialog of browser.warnOnQuit. This means that people
who have activated "Always restore last session" are not bothered by
this question, because this warning does not show up then.

This dialog also does not appear if a single Firefox window with a
single tab is closed. Even if a user may also want to continue the
session the next time in this case, this is nonetheless acceptable,
because restoring sessions is mainly important for large sessions with
many tabs and/or windows open.


Benefit
-------

- The user is reminded to continue previous work if a non-empty
  session shows up at start.
- The user can decide whether to restore the session or not at that
  point of time when he still knows what he did, i.e. when closing
  Firefox.
- The setting is completely intuitive. Everybody knows what will
  happen.
- Existing infrastructure is used, no new dialog must be introduced.


Negative impact
---------------

None. All current scenarios continue to work.

- Manually restoring a session will work as before.
- Workflow with "Always restore last session" activated will work as
  before.
- Workflow with "Always restore last session" de-activated will work
  as before if the user does not click on the new "Restore next time"
  button of the browser.warnOnQuit dialog.


Why not use "Always restore last session"?
------------------------------------------

The option "Always restore last session" at start can not handle this
workflow equally good. If you do *not* activate it, the reminding
effect at the next start is lost and you have to remember yourself
that you need to continue your work and open the last session
manually. If you *do* activate it, there is no possibility to close
and restart Firefox for a clean desktop anymore and you may need to
close many unwanted tabs and windows manually.

There is also no simple way to close all tabs. Opening a new tab and
then hitting "Close all other tabs" in the context menu is
counter-intuitive. When you want to close tabs, opening a new one is
maybe not the first thing you think of. So closing and restarting
Firefox may be a valid solution for many people to achieve this. But
this won't work if you have "Always restore last session" activated.


Does this replace browser.showQuitWarning?
------------------------------------------

browser.showQuitWarning is gone since Firefox 63. But the workflow
above shows that people need such an option. I used it all the time.
Actually I never understood why this option was removed from the UI in
the first place. At least it was still available in about:config until
Firefox 62. But now it is completely removed and I see lots of people
complaining in the internet. Here are some links:

https://www.reddit.com/r/firefox/comments/9rfmc0/tab_saving_on_quit_is_nonfunctional_even_within/
https://www.reddit.com/r/firefox/comments/9rosj6/lost_my_session_after_upgrading_to_firefox_63/
https://www.reddit.com/r/firefox/comments/9rt1kn/how_to_get_a_warning_when_closing_firefox_and/
https://www.reddit.com/r/firefox/comments/9e9nbk/what_happened_to_save_quit_button/

And this is just reddit, there are lots of more cases all around the
world. browser.showQuitWarning was heavily used!

But I want to be constructive. Because Firefox always autosaves the
session, the old "Save and Quit" dialog of showQuitWarning was
misleading anyway. The question is not whether to save the session or
not, but instead whether to show the session at the next start or not.
So maybe we can handle this better in warnOnQuit now.

As an alternative, simply bring back browser.showQuitWarning. It
perfectly reflected the above workflow.

Hartmut
Blocks: ss-feature
Priority: -- → P4
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.