Replace Windows "minimize to tray" with "close to tray", add start in tray
Categories
(Thunderbird :: OS Integration, enhancement, P2)
Tracking
(relnote-thunderbird ?, thunderbird_esr140 wontfix)
People
(Reporter: lachcim, Assigned: lachcim)
References
(Blocks 1 open bug, )
Details
Attachments
(2 files)
As per our discussion in the #tb-design:mozilla.org Matrix channel, we'd like to replace the "minimize to tray" option with "close to tray", and also add an option to start Thunderbird in the tray.
What Thunderbird does now:
- Pressing the minimize button (_) moves Thunderbird to the system tray
- Pressing the close button (X) quits Thunderbird
What Thunderbird should do:
- Pressing the minimize button minimizes Thunderbird normally
- Pressing the close button moves Thunderbird to the system tray
- Optionally, the user can choose to move Thunderbird to the tray on startup
What's wrong with the current behavior:
- Having the X button behave normally makes it too easy to quit Thunderbird. People expect a mail client like Thunderbird to be permanently running in the background.
- Clicking X should move Thunderbird to the tray instead.
- Having the _ button hide Thunderbird makes it impossible to actually minimize Thunderbird and keep it in the taskbar, which is a very useful workflow for many users.
- Clicking _ should minimize Thunderbird normally.
- More importantly, if minimizing the window causes it to move to the tray, this also means that pressing Win+D (the shortcut for "show desktop") will also move it to the tray. This is a very annoying, seemingly unintended behavior.
- Pressing Win+D should not move Thunderbird to the tray. This is fixed by having the _ button minimize Thunderbird normally.
| Assignee | ||
Updated•1 month ago
|
| Assignee | ||
Comment 1•1 month ago
|
||
Updated•1 month ago
|
Updated•1 month ago
|
| Assignee | ||
Updated•28 days ago
|
Pushed by benc@thunderbird.net:
https://hg.mozilla.org/comm-central/rev/835e07554d03
Replace "minimize to tray" with "close to tray", add start in tray. r=aleca,darktrojan,tobyp
Comment 3•24 days ago
|
||
Release Note Request (optional, but appreciated)
[Why is this notable]: This feature normalizes the way Thunderbird behaves in comparison to all other applications out there, making it possible to minimize Thunderbird to the system tray when clicking on the close icon.
This replaces the old behaviour of hiding Thunderbird when clicking on the minimize button, which is an outdated workaround for handling windows collapse.
We needed to change this for 2 reasons:
- Windows has a feature called "Show desktop" which minimizes all windows in order to reveal the clear desktop. This Windows feature conflicted with the old Thunderbird feature, resulting in an unexpected window closing and tray minimization.
- A very popular add-on made by the same user that created this patch implemented this "close to tray" feature. Unfortunately that add-on will not be compatible with next year's ESR as web experiment will not be permitted starting from July 2027.
[Suggested wording]:
Implemented the ability to hide Thunderbird in the system tray when closing the last window.
This feature is optional and controllable via the Settings tab.
A menu item to quit Thunderbird from the system tray has also been implemented.
This feature replaces the old "Minimize to Tray" feature.
[Links (documentation, blog post, etc)]:
| Assignee | ||
Comment 4•24 days ago
|
||
Ran into this issue when testing start in tray with a maximized window. When the tray icon is clicked, we are unconditionally calling ::ShowWindow(hwnd, SW_RESTORE) on each hidden window. The assumption here is that each window was previously minimized and now needs to be restored (un-minimized). With close to tray and start to tray in place of minimize to tray, this is no longer true, and sometimes we end up "restoring" (un-maximizing) maximized windows.
- Add an if statement to make sure we only restore minimized windows.
- Remove a hack where we'd minimize a window prior to hiding it so as to counteract the restore.
Testing:
- Enable close to tray and start in tray
- Maximize the window
- Close the window, restore it from the tray
- The window should come back maximized
- Restart Thunderbird, restore main window from the tray
- The window should come back maximized
| Assignee | ||
Comment 5•24 days ago
|
||
^ This is a very minor issue with a one-liner fix. Shouldn't be a blocker
Why is Start Daily in the tray only available when When Daily is closed, move it to the tray is enabled?
| Assignee | ||
Comment 7•24 days ago
|
||
(In reply to Francesco from comment #6)
Why is
Start Daily in the trayonly available whenWhen Daily is closed, move it to the trayis enabled?
This is what Alessandro and I agreed upon in the Matrix channel. If I may offer a rationale, it seems extremely unlikely to me that a user would like to start Thunderbird in the tray and then have no way to move it back to the tray once it has been restored. This is also the behavior of the extension that prompted this patch.
You're aware of pref mail.biff.show_tray_icon_always? So the user might want to start TB in the tray, and use the tray icon to bring it forward if hidden by other windows. In general, orthogonal (independent) options are best and trying to second-guess users wishes rarely cover all possible use cases. Personally, I would have left: Minimize to tray, Close to tray and start in tray as independent options. This can be achieved today, albeit with add-ons, so any restriction of combinations is a step backwards and will trigger users': "Why can't I do X any more?"
Comment 9•23 days ago
|
||
The mail.biff.show_tray_icon_always is an old pref that is not exposed to the UI, and was never enabled beyond Daily. We will probably remove it and always show a tray icon once we get useful context menus and indicators in there.
We're slowly moving away from all of these hidden prefs and strange behaviours that don't make sense.
Even if it seems that having 3 prefs to do slightly similar things is an optimal scenario, it mostly creates confusion and doesn't solve any problem.
This is one of the most common complaints we get from users that don't use Thunderbird: "It's too complicated and has too many options".
While we're not gonna remove the customization and options that make Thunderbird powerful, is it the best interest of the product to make it easier and more linear to use.
| Assignee | ||
Comment 10•23 days ago
|
||
My fear is that, if we allow "start in tray" without "close to tray":
- After restoring (un-hiding) the window, the user will be left wondering: "Okay, now how do I hide it back?" (they can't)
- The user might assume that "start in tray" already implies "close to tray", which may lead to them inadvertently quitting Thunderbird when they press the X button (very frustrating and not immediately noticeable)
I'm sorry but I'm not sure how mail.biff.show_tray_icon_always is relevant here. Clicking the tray icon does not hide Thunderbird, it only restores it. I'm trying to emphasize that there will be no way to hide Thunderbird again if we allow this combination of settings.
Comment 11•23 days ago
|
||
(In reply to Alessandro Castellani [:aleca] from comment #9)
The
mail.biff.show_tray_icon_alwaysis an old pref that is not exposed to the UI, and was never enabled beyond Daily.
The pref was introduced in bug 1727874 in TB 110 and for Windows has been available in all versions, incl. ESR, see here in 128 ESR for example:
https://searchfox.org/comm-esr128/rev/fc387a347a87314100eb8d2b54d8b0250df7044c/mailnews/mailnews.js#877
(In reply to Michał Szopiński (:lachcim) from comment #10)
I'm sorry but I'm not sure how
mail.biff.show_tray_icon_alwaysis relevant here. Clicking the tray icon does not hide Thunderbird, it only restores it. I'm trying to emphasize that there will be no way to hide Thunderbird again if we allow this combination of settings.
"Hiding TB" (that is removing the taskbar button) may not be a requirement. Here is the use case:
- User sets
mail.biff.show_tray_icon_alwaysand "start in tray" (mail.closeToTray.startInTray). - On the next start, TB starts without main window. Starting can be done via a Windows task at startup.
- When the user feels that they want to access their mail, the click the icon. The main Window appears.
- From the on, they operate "normally", that is, minimize using the Windows control and close the application also via the Windows control.
IMHO there are more users of the existing "minimize to tray" than there were for "close to tray". All those now have to retrain without any additional benefit.
| Assignee | ||
Comment 12•23 days ago
|
||
Francesco, could you propose a user story that leads to this scenario? The only one I can think of is: "As a user with a low-end PC, I'd like Thunderbird to quietly start on startup so that I can immediately use it when I need it, and then quit it to free up resources". And even that can be achieved by close to tray + start in tray, all the user has to do is to select "Exit" from the context menu.
As for keeping minimize to tray, we had a discussion about that where I believe all your points have been addressed. See https://phabricator.services.mozilla.com/D304012#10568999
Comment 13•23 days ago
|
||
The comment you quoted reflects exactly my sentiment:
I agree with Toby on keeping the existing behaviour alongside the new. There's 110,000 people used to the existing behaviour, or at least happy enough with it they kept the preference on.
This opinion got overruled later: https://phabricator.services.mozilla.com/D304012#10593362.
I'm not a user of any of this functionality, so I was just sharing the basic software design principle of orthogonality. Part of the 110,000 existing users may be disappointed. As you may know, TB has a very conservative user base, and any change restricting their options is generally not appreciated.
As for the use case: Yes, the user can use "Exit" from the menu, but they have to retrain. Personally, I object to all Windows applications which hang around even if you close their main window.
We can end the discussion here. A management decision was taken to implement it the way it was implemented.
Comment 14•23 days ago
|
||
I only see conditions for win, on the links, as A Linux user, all i ever wanted is to keep be notified when i receive an email.
That is the only benefit for closing to tray.
If I had an option to reopen it instead of just a sole option to close, it would be way better.
Updated•23 days ago
|
| Assignee | ||
Updated•22 days ago
|
Comment 15•22 days ago
|
||
Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/21775b0224c5
When the tray icon is clicked, don't restore windows that are not minimized. r=aleca
Updated•3 days ago
|
Description
•