Closed Bug 942615 Opened 10 years ago Closed 3 years ago

Provide a way to use Thunderbird without setting up any email account

Categories

(Thunderbird :: Preferences, enhancement)

enhancement
Not set
normal

Tracking

(thunderbird_esr91 wontfix)

RESOLVED FIXED
93 Branch
Tracking Status
thunderbird_esr91 --- wontfix

People

(Reporter: ipatrol6010, Assigned: aleca)

References

(Depends on 1 open bug, )

Details

Attachments

(1 file, 2 obsolete files)

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0 (Beta/Release)
Build ID: 20131025151332

Steps to reproduce:

I use Thunderbird for Lightning solely, since my email account provider does not provide POP/IMAP/SMTP.


Actual results:

However, every time I start TB, it asks for an email account, which I cannot provide. I tried several times to disable this behavior via the advanced config, but to no avail. Checking online through BZ and MZ only suggests to create a dummy account.


Expected results:

I am aware that TB is supposed to be a mail client, but as ESR said, "Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected." There should be a way of disabling this wizard if so desired.
OS: Windows 7 → Windows 8
Hardware: x86_64 → All
Version: 24 → 26
Severity: normal → minor
Status: UNCONFIRMED → RESOLVED
Closed: 10 years ago
OS: Windows 8 → All
Resolution: --- → INVALID
Status: RESOLVED → UNCONFIRMED
Resolution: INVALID → ---
Component: Account Manager → Preferences
Summary: Using Thunderbird without mail account causes Account Manager to popup → Provide a way to use Thunderbird without setting up any account
Version: 26 → Trunk
Severity: minor → enhancement
See Also: → 1305270, 912176

Please read the information from the duplicate bug 1716876.

Another use case is when one has *.eml files. The email message should just open without any dialogs, such as asking to set up an email address in Thunderbird.

Can the status of this issue please be changed from UNCONFIRMED to NEW?

What do you think?

Thank you

Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → alessandro

Now that the new Account Setup is in a Tab, the inability to use TB without an account has been emphasize even more because the init code doesn't run unless the account setup is closed.
Before, with the account setup in a dialog, closing it was a more natural action.

Let's do this!

Upon a bit of investigation, I think this is doable, even tho it requires a bit of work and some decisions before touching the code.

First, we need to change this condition: https://searchfox.org/comm-central/rev/6820aaa407ab48a2c1b7a7477015e0dac1dc5daf/mail/base/content/msgMail3PaneWindow.js#766-771

We would need to split the loadPostAccountWizard() method in order to run all the init methods not strictly related to the existence of an account.
After doing that, the rest of the startup process can remain the same, which means checking for an existing account and loading the Folder pane if so.
With these initial changes we can guarantee that any other part of Thunderbird is usable without an existing email account (calendar, tasks, chat, etc)

The next step would be to find a way in which users can permanently dismiss the Account Setup tab, telling TB to not bother them anymore.
Maybe we could consider having a link in the account setup that says "Close and don't ask me again", or something like that.
How do we then make this request permanent? A pref? Something stored in the profile?

(In reply to Alessandro Castellani [:aleca] from comment #5)

Now that the new Account Setup is in a Tab, the inability to use TB without an account has been emphasize even more because the init code doesn't run unless the account setup is closed.
Before, with the account setup in a dialog, closing it was a more natural action.

Let's do this!

Does this mean that this issue needs to be resolved in Thunderbird 91 ESR?

(In reply to Alessandro Castellani [:aleca] from comment #6)

The next step would be to find a way in which users can permanently dismiss the Account Setup tab, telling TB to not bother them anymore.
Maybe we could consider having a link in the account setup that says "Close and don't ask me again", or something like that.
How do we then make this request permanent? A pref? Something stored in the profile?

While there may be a pref for this, please also have a GUI for this.

Has you looked at the screenshots in bug 1716876? Use Thunderbird without an email account.

Thank you

Pinging Magnus to get feedback on the action plan in comment 6

Flags: needinfo?(mkmelin+mozilla)

Sounds good to me. Maybe we do want a pref and wording like outlook (see bug 1716876)

Perhaps we should only show such a thing if you cancel the setup, and do not have any account.

Flags: needinfo?(mkmelin+mozilla)
Attached patch [WIP]bug942615-startup.diff (obsolete) — Splinter Review

WIP patch to show the progress and gather feedback.

  • I created a new app.useWithoutMailAccount pref that we can later hook to a confirmation dialog when the user dismisses the account setup.
  • I reordered the startup methods to run all the various init and restore without triggering mail UI specific methods if no account is available.

The startup process seems to work properly, but I'm not sure if I'm missing something vital, or creating some nasty regressions.
This will probably bust a lot of tests which I'll take care of later.

Any glaring red flag?

Attachment #9237549 - Flags: feedback?(mkmelin+mozilla)
Attachment #9237549 - Flags: feedback?(geoff)
Status: NEW → ASSIGNED
Attachment #9237549 - Attachment is patch: true
Comment on attachment 9237549 [details] [diff] [review]
[WIP]bug942615-startup.diff

Review of attachment 9237549 [details] [diff] [review]:
-----------------------------------------------------------------

Seems alright. It's probably good to have some of this stuff happening before the account wizard shows, given that you're not trapped there and can switch to other tabs – they should be functional.
Attachment #9237549 - Flags: feedback?(geoff) → feedback+
Comment on attachment 9237549 [details] [diff] [review]
[WIP]bug942615-startup.diff

Review of attachment 9237549 [details] [diff] [review]:
-----------------------------------------------------------------

::: mail/app/profile/all-thunderbird.js
@@ +109,5 @@
>  pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/%APP%/%VERSION%/");
>  
> +// Allows using Thundebird without a configured email account, blocking the
> +// account setup prompt at startup.
> +pref("app.useWithoutMailAccount", false);

nit: maybe "mail.use_without_mail_account"

::: mail/base/content/msgMail3PaneWindow.js
@@ +743,5 @@
>     * illusion that Thunderbird is starting faster.
>     *
>     * Note: this only runs for the main 3 pane window.
>     */
> +  async _delayedStartup() {

_delayedStartup() is a function we kind of try to keep in sync with firefox, and theirs is not async

If you make it async, you need to make sure the caller is expecting that. It seems it should not be a problem.
Attachment #9237549 - Flags: feedback?(mkmelin+mozilla) → feedback+

nit: maybe "mail.use_without_mail_account"

Sounds good.

_delayedStartup() is a function we kind of try to keep in sync with firefox, and theirs is not async
If you make it async, you need to make sure the caller is expecting that. It seems it should not be a problem.

Ah, I wasn't aware of that, thanks for the heads up.
I'll move the "load components" part into a dedicated method that can be async, so we can avoid changing the _delayedStartup() method.

Blocks: 1700487

I'm having a tiny issue in handling the closing of the account tab.

When the user clicks CANCEL in the form, I can easily trigger an HTML dialog to ask for confirmation and expose the the [] Use TB without an email account checkbox.
This is not possible if the user clicks on the close icon (X) in the tab, or uses the keyboard shortcut to close the Tab.

Is there a way to prevent the tab from closing in those scenarios?
I would really like to avoid using a prompt() in order to have full control on the dialog style and better manage confirmation messages and toggle options.

Attached patch bug942615-startup.diff (obsolete) — Splinter Review

Another day, another WIP patch with a bunch of questions.

  1. Still not sure how to handle the things I reported in comment 14.
  2. I was trying to add a test to cover this implementation, but it seems that a Local Folders account is always present when running a test. I also tried to create a new manifest file to clear any account setup, but no luck so far.
  3. For the rest, it actually works nicely, and based on this try run it seems that these changes are not affecting existing tests, which is a pleasant surprise. https://treeherder.mozilla.org/jobs?repo=try-comm-central&revision=f3aeeee5c32a65ef4e85e353826ad4cbbdb0cf16
Attachment #9237549 - Attachment is obsolete: true
Attachment #9237900 - Flags: feedback?(mkmelin+mozilla)
Attachment #9237900 - Flags: feedback?(geoff)

Looking at tabmail, there's a number of mechanisms that could be used to prevent a tab closing. None of them are particularly appealing.

I think I'd dispatch a cancelable TabClosing event before the TabClose event. (Ignore the onTabClosing bit below it, that's stupid and should be called onTabClosed.) Eww, now you've got me looking at tabmail code.

Local Folders

This account is not needed for Feeds (never got around to removing its creation), and is almost certainly not needed for Chat or Calendar only installations. So tests should account for that in a non email setup.

Attachment #9237900 - Attachment is obsolete: true
Attachment #9237900 - Flags: feedback?(mkmelin+mozilla)
Attachment #9237900 - Flags: feedback?(geoff)

I had to create a dedicated manifest file for the tests in order to run them without any pre-configured account, and avoiding affecting other tests.
A decent try-run: https://treeherder.mozilla.org/jobs?repo=try-comm-central&revision=39273af55b127a77bc706beda400b5a42729b58e

Target Milestone: --- → 93 Branch

Pushed by alessandro@thunderbird.net:
https://hg.mozilla.org/comm-central/rev/f4b2344a503d
Use Thunderbird without an email account. r=mkmelin

Status: ASSIGNED → RESOLVED
Closed: 10 years ago3 years ago
Resolution: --- → FIXED

Thank you for fixing this issue for Thunderbird version 93. Can this issue please be fixed for the non-ESR version of Thunderbird, say version 91.0.4 or version 91.1? Thank you

Thank you for fixing this issue...

You're very welcome :D

Can this issue please be fixed for the non-ESR version of Thunderbird, say version 91.0.4 or version 91.1?

Any 91.* version is still an ESR, since the main digits of the version number are the same.
I'm not sure we can uplift this to 91 as there are string changes that won't have translations for the non-en versions.

Also, since this patch changes quite a bit the startup process and its methods, I'd like to keep it in the beta cycle for a while in order to catch possible regressions and issues.

Can you please advise the version of the next ESR after version 91 and the release date? Thank you once again

(In reply to Óvári from comment #23)

Can you please advise the version of the next ESR after version 91 and the release date? Thank you once again

You'll want to consult https://wiki.mozilla.org/Release_Management/Calendar and calculate the date for version 101 based on a 4 week interval per version.

Was this tested on a fresh profile, for each non mail account type? Neither feeds nor newsgroups work.

(In reply to alta88 from comment #25)

Was this tested on a fresh profile, for each non mail account type?

This was tested exclusively with email account type.
We will slowly transition other account types to the new account setup tab.

What I mean is that there is a regression (maybe in the folderpane changes elsewhere and maybe not due to this change) where accesses to a null _rowMap (the getter shouldn't be null but declared as an array) aren't handled or gFolderTreeView properties aren't ready and initial new accounts blow up folderpane view. So maybe there should be an enhanced testing protocol for new profiles.

Bug 1728030 happened to fix the regression for feeds. Newsgroups are still broken.

Depends on: 1728596

(In reply to alta88 from comment #28)

Bug 1728030 happened to fix the regression for feeds. Newsgroups are still broken.

Thanks for handling that bug.
I'll investigate the Newsgroups issue, and also cover those scenarios with tests once fixed.

Summary: Provide a way to use Thunderbird without setting up any account → Provide a way to use Thunderbird without setting up any email account
Regressions: 1729571
Regressions: 1729577
No longer depends on: 1728596
Depends on: 1728596
See Also: → 1731008
See Also: → 1729697
No longer duplicate of this bug: 1688505
You need to log in before you can comment on or make changes to this bug.