2007-09-20

tabs for Thunderbird 2.0

A user of one of the "Thunderbird 1.5 with tabs" builds I made a couple years ago recently asked me if it would be possible to update the patch for Thunderbird 2.0.  After some wrangling, I got the patch to apply and behave itself in my testing, and I've spun some tab-enabled builds of 2.0.0.6 for Linux, Mac OS X, and Windows.

Note that the Thunderbird developers are implementing a different version of tabs for Thunderbird 3 over in bug 218999.  So I won't be porting this patch to the trunk.  But if you can't wait for that release to get your tabs, these builds may be useful to you.

To open a message in a tab, context-click it and select "Open message in new tab" from the context menu.  To make this the default behavior when opening messages, set Preferences > Advanced > General > "Open new messages in" to "A new message tab".

p.s. congrats to Thunderbird on the new organization!  I'm looking forward to great things from it.

15 comments:

pd said...

would it take much work to get every window opening as a tab?

Composing email windows as tabs
Viewing mailbox windows as tabs

?

alta88 said...

i just downloaded/tried this - it's exactly how tabs should behave in Tb, in the Message Pane!

please please reconsider adding this to trunk, it's very different from the current tabbed interface in trunk, which is window/view based.

imo, the 'window' tabs are not adding new usability, ie clicking a tab is no different from selecting a folder regarding the view (for folder tabs). and with favorite folders, one can collect folders the same way one might collect tabs. and, opening a message in a tab leaves it without its thread/folder panes and thus its context is lost.

but with your Message Pane tabbing, one can collect individual messages within and across folders and keep the 3pane view - a real message organization benefit that doesn't exist otherwise.

the two can easily coexist - your menu might say Open in New Message Pane Tab.

thanks.

Mariano said...

Is there anyway to keep the tabs after I close thunderbird

Anonymous said...

Hi,
what a usefull idea!!
But it is just in English... What about have it also in the other languages?
Is it possible to install your build and then "translate" it in Italian with some kind of language pack?
And then what about the update? If I install your build, will I still receive the automatic update?
Buy
Bellazambo

Thanks a lot for your job!!

Anonymous said...

Many, many thanks!

I *am* that 1.5 users who has been desperate for tabs in a 2.0 release and I am thrilled!

m

Myk said...

pd said...

would it take much work to get every window opening as a tab?

Composing email windows as tabs
Viewing mailbox windows as tabs


I'd love to see email compose windows in tabs, but unfortunately it's much harder to do, because the command system (i.e. the menus and all their options) is different for such windows.

I'm not sure what you mean by mailbox windows, but if you mean the thread pane (i.e. the list of messages), I'm not sure how hard that would be to do in Thunderbird 2, but it has been implemented in development versions of Thunderbird 3 by the Thunderbird developers.

alta88 said...

i just downloaded/tried this - it's exactly how tabs should behave in Tb, in the Message Pane!

please please reconsider adding this to trunk, it's very different from the current tabbed interface in trunk, which is window/view based.


Thanks for the feedback. It's my sense that the Thunderbird developers have decided against including this implementation of tabs in the product, but perhaps if you mention how you think tabs should work in bug 218999, they'll add support for your use case in their implementation.

Mariano said...

Is there anyway to keep the tabs after I close thunderbird


Session restore for tabs? That's a fantastic idea! Unfortunately, there's no way to do that with the current implementation.

Anonymous said...

Hi,
what a usefull idea!!
But it is just in English... What about have it also in the other languages?
Is it possible to install your build and then "translate" it in Italian with some kind of language pack?


Yes, it is possible for someone to translate the strings I've added by distributing a language pack containing them. In theory this would be as simple as taking the existing language pack for Thunderbird, adding the translated strings, and then distributing the language pack.

It might be more complicated if the language packs have official branding, however. These builds are built with official branding turned off, since Mozilla trademark policy doesn't permit distribution of the official branding without permission from Mozilla.


And then what about the update? If I install your build, will I still receive the automatic update?


Unfortunately you won't still receive automatic updates, as I don't have the time right now to set them up. But I will try to rebuild these builds with the latest fixes each time there's a security release.

alta88 said...

Thanks for the feedback. It's my sense that the Thunderbird developers have decided against including this implementation of tabs in the product, but perhaps if you mention how you think tabs should work in bug 218999, they'll add support for your use case in their implementation.

i've already commented, didn't get any response. i find the current tabs implementation just isn't useful at all.

could you implement this as an extension? or does the cpp code make that unfeasible.

olive said...

Good job! Would it be possible to port the patch to an extension, so it could be used eg on branch nightly builds?

alta88 said...

myk, do you think it would be nice to enable dnd on tabs? i'm thinking for thread msg dnd. i've actually rewritten thunderbrowse to work with your tabs, ie open links in tabs via context - and would like to add link dnd to a more generic thread msg dnd - which is more properly done generically in the build.

thanks.

Myk said...

alta88 said...


could you implement this as an extension? or does the cpp code make that unfeasible.


olive said...


Good job! Would it be possible to port the patch to an extension, so it could be used eg on branch nightly builds?


Unfortunately it's pretty hard to implement this as an extension, because it touches lots of core JS and C++ code.

I could make an extension that overrides all the core files with its own modified versions, but it would be pretty large, and it would need to be updated frequently to work on branch nightlies.


do you think it would be nice to enable dnd on tabs? i'm thinking for thread msg dnd.

Do you mean making it possible to drag a message from the thread pane onto a tab to load it into that tab? That seems to me like a great idea!

alta88 said...

to me, it would be worth any sized extension.. i'm really sorry Tb won't implement tabs this way.

anyway, dnd turned out to be ridiculously easy. i've got email links dropping/loading, and even got a thread to drop. however, trying to load a local mailbox: uri throws not one but 2 security errors - and since a message is selected/loaded on mousedown instead of on click, it always loads in the primary tab even if you just want to drag..

Mike said...

That's a very nice extension.

Noticed two problems:
- the scroll bar appears only in the RH tab
- View > Headers > All opens up the header, but View > Headers > Normal does not remove the header

Mike said...

oops, can't reproduce the no scroll bar fault any more, maybe all the message was showing - apologies.

Message header problem is there though.

Myk said...

Mike: thanks for the tip, I'll look into that header problem.

david_mack said...

Myk...thank you, thank you, thank you!