This is an archived page. It's not actively maintained.

Thunderbird 3.1 for developers

This page is not complete.

This content covers features introduced in Thunderbird 3.1

This page lists the changes in Thunderbird 3.1 that are relevant for developers. For the time being, please also list user-visible changes. (If there are many of these, we will create a separate page for them.)


  • In Thunderbird 3 and earlier, there were modal alerts originating from protocol (e.g. imap/pop3) origins display errors such as "Failed to connect to server xxx".
  • In Thunderbird 3.1 and later these are now displayed in the same area as "new mail" notifications, as notifications and do not require dismissing for Thunderbird to continue functioning. The errors are also echoed to the activity manager for later examination if required.

Content Tabs


  • Folder tree modes can now express parent relationships and tell us which folder a message belongs to. There is a new interface (expected to be implemented by folder tree modes) called IFolderTreeMode. However, for extension developers, this change breaks compatibility. Shifting to the new interface from the 3.0 callback is simple -- the callback maps to generateMap directly, and the other functions should be easy enough to define.

Message Header


Thunderbird 3.1 supports lightweight themes; these are easy-to-create themes that simply apply a background to the top (URL bar and button bar) and bottom (status bar) of the main mail windows. This is an integration of the existing Personas theme architecture into Thunderbird.

Lightweight themes can be installed from content tabs.


  • A new method detachAttachmentsWOPrompts allows extensions to silently detach attachments to a specific folder, with unique file names created if needed to prevent duplicates.

Manipulating message headers

  • Extensions can now use the BatchMessageMover to archive messages. Previously, only the currently selected messages could be archived. Now an extension can silently archive some messages in the background using the standard process instead of determining the right folder and doing the move all by itself. Please note that archiveSelectedMessages has been renamed into archiveMessages to easily check whether this new feature is available.

More resources

Thunderbird 3.1 is code-named "Lanikai".

Release notes and announcements