Proposal to start a new implementation of Thunderbird based on web technologies

Tanstaafl tanstaafl at
Wed Apr 12 15:10:42 UTC 2017

On 4/12/2017, 10:04:01 AM, The Wanderer <wanderer at> wrote:
> Sorry for responding so relatively late to the original mail; I've
> been distracted by other things, and only just read through the
> thread today.

I'm glad you did, because I missed Ben's mention of virtual folders (so
will now go back and re-read his entire message in full to see what else
I missed).

> On 2017-03-24 at 13:04, Ben Bucksch wrote:
>> Deeper goes the problem of virtual folders. Thunderbird has them 
>> implemented as a bolt-on, which essentially keeps a copy of the 
>> mails, as far as I understand, and they are slow and inflexible. A 
>> new Thunderbird implementation could take an approach of where 
>> folders are a view that is computed in real time (like views in 
>> databases). This matches what GMail does with the AllMails folder
>> and tags as properties, and then tags also form a virtual folder.
>> There are important implications that this has: I can have a
>> unified inbox, one inbox per folder, and I can have the emails
>> sorted into specific project folders on arrival, all without
>> overhead. The same incoming email appears in all 3 folders in the
>> same second, and is marked read at the same time. I no longer have
>> to move emails, but they are filtered.

> The mention of GMail-like views leaves me cautious. Is this related
> to what GMail does with message deduplication (only store one copy of
> the message, and display it in multiple locations), or is it
> something different and more folder-centric rather than
> message-centric?

I love the idea of 'virtual folders'... BUT...

I played with them in Thunderbird in the past, and while the idea was
awesome and at first I was very excited to start using them, I soon
realized the fact that they were local only made them a non starter for me.

This feature needs to be just as if not more focused on server
side/based virtual folders as it is Local. Dovecot calls these 'virtual

I would absolutely love a way to create/manage Dovecot virtual mailboxes
from Thunderbird. This way, the 'virtual folders' would be available to
all email clients (mainly my phone and tablet), and to other Thunderbird
instances (without having to recreate and manage them on each one
manually), and even better, would automatically have the advantage of
dovecots server side indexes for blindingly fast searches, even full
text searches (if you have the enabled), without GLODA totally disabled.
As nice as GLODA is, for someone who lives in IMAP and does NOT keep
their messages stored locally, GLODA is useless (apologies to the GLODA
developers - as I said, it is nice, but only for POP users - or IMAP
users who only use Thunderbird and/or keep everything on their local
PC('s). I don't, and never will.

In addition to dovecot, TB could also support GMail's out of the box,
then add support for additional servers as they add support for it.

> If the latter, this is probably fine, but the former could be
> problematic. So far as I can tell / am aware, Gmail appears to do its
> message-level deduplication by treating messages with the same
> Message-ID as being identical and discarding any duplicates, even
> though in some cases (e.g. sending an E-mail to a mailing list and
> then receiving a list-modified copy back to yourself) the second
> message with the same Message-ID may in fact include important
> differences. I consider that a distinct misfeature,

I fully agree, but I don't think that such a 'feature' automatically
follows a server-side virtual folder implementation, and hopefully the
TB dev(s) who end up implementing this could at least be convinced to
provide a way to disable it if they decided they liked it.

I do, however, in general, like the idea of de-duplication, and dovecot
does have an option for 'single instance storage', but when enabled, it
doesn't de-dupe list messages (meaning, it doesn't do what gmail does).

So, I don't think this is something that TB should be bothering with, at
least for IMAP accounts. It might make sense for POP/Local mail only
users, but in my opinion, those are getting fewer and fewer as time
marches on - IMAP (and its enhancements, like maybe JMAP) are the way of
the future.

>> 0.8. Be close to the existing Thunderbird
>> Even though we write almost all code from scratch, we will save a lot
>> of time by having a clear goal: We want to replicate the current
>> Thunderbird, from an end user perspective. That means, the user will
>> find the same 3-pane window layout, the same way how folders and
>> message lists and the thread pane operate. The theme will be similar.
>> Existing Thunderbird users should feel right at home.

Yes, and those of us who are not coders can than participate in other
ways, such as collecting any/all UI bug/enhancement requests so that
whoever is 'recreating' the UI, can also focus on making improvements as
they do so - for just one example, improving the Vertical View (ala
Outlook), which would make Outlook users much happier if/when using
Thunderbird. I have a decent list of these...

>> We retain the overall UI and most features and qualities like 
>> performance, even if we do not copy all little details.

> What about those of us who prefer a Thunderbird UI more like that 
> which came *before* "current Thunderbird", and apply various hacks 
> (add-ons, userChrome.css, et cetera) to restore aspects of that UI? 
> That is, those who may have felt "right at home" in a previous 
> Thunderbird version, and felt that a later version took that home 
> away from them.

I think the main goal here should just be that we also want to duplicate
and enhance the ability to customize the UI, so that, even more than
now, we can modify the UI to the way we like it.

That said, it is still very customizable. To date there is only one UI
change I am unable to recreate from the older version 2 that I would
still like to be able to change - put all buttons on one toolbar, ie the
menu bar (yes, this can be done), show the menu bar above the tab bar
(can this still be done?), not show the tab bar when only one tab is
open (this can not be done when the window is not maximized and), and
shove the menu bar up into the Window Titlebar).  This is currently
impossible to do.

Allow both mail.tabs.drawInTitlebar and mail.tabs.autoHide to be True
when window is maximized

Allow grabbing blank space on the Menu Bar to move the window

More information about the tb-planning mailing list