Refine running in the background experience
Currently, the "Watch for new mail when closed" is pref is problematic for a bunch of reasons:
- In that it actually does two separate things (start Geary on login, prevent the app from quitting when main window is "closed") but from people's perspective does a different thing altogether, namely "Show notifications when closed".
- The implementation where the MainWindow is simply hidden causes a bunch of weird bugs (e.g. #169 (closed))
- There's no way for people to quit Geary when e.g. it needs to be launched with certain flags, or after an upgrade. Aside from dropping to a terminal.
I think the way forward here is to 1) Split the "Watch for new mail when closed" pref into two different things: "Launch Geary at login" and "Keep running when windows closed" or thereabouts, 2) Actually close the MainWindow when closed, regardless of these settings, and 3) Make Ctrl+Q always with the app.
Thus people with the "Keep running when windows closed" pref will get their wish by closing windows with the X button or Ctrl+W, but the quit action still does what it says on the tin.
Also, need to investigate how we can keep the "Application running" indication on the dash, even when no windows are open.
Edited by Michael Gratton