03-29-2022 06:37 AM - edited 03-29-2022 06:43 AM
As someone who has been in the technology business for a very long time, I am very puzzled by Mozilla's attitude towards Thunderbird extensions and in particular their developers. It seems to be very insular at best and arrogant at worst.
One of the beauties and advantages of Thunderbird is its extensive list of extensions and the army of volunteers who develope them. To deliberately create a discontinuity and then not also provide information and help to that army is unconscionable and disappointing.
Providing a way around such discontinuities is or ought to be part of a "professional" development effort.
04-25-2022 03:11 PM - edited 04-25-2022 03:13 PM
Hey Rob, I'm sorry you feel that way. We have various members of the team now dedicated to helping create new APIs for extensions and engage with the add-on developer community. There is quite comprehensive documentation available for them here: https://developer.thunderbird.net/add-ons/about-add-ons
We also have a team who can work directly with add-on developers to update their add-ons.
The change from legacy extensions to the modern MailExtensions was painful, and was not handled correctly when Thunderbird underwent that change. The primary reason it went so poorly is because the project had little money and staff to oversee that change-over, and volunteers were too limited on time to help out at the level that was needed. Since then, donations to the project have allowed us to hire staff who document how to update add-ons and engage with add-on developers in that effort. If you know of add-on developers who need help, please let me know. (I'm the Thunderbird Product Manager).
10-18-2022 09:56 AM - edited 10-18-2022 09:58 AM
Hello, i use experiment apis because there is no proper documentation.
For example, "permissions" are very poorly described.
I still don't understand how to figure out what permissions I need.
I use next events:
window.addEventListener("load",()=>{/*mycode*/}, true);
document.getElementById("messagepane").addEventListener("DOMContentLoaded",()=>{/*mycode*/}, true);
document.getElementById("folderTree").addEventListener("select",()=>{/*mycode*/}, true);
MailServices.mailSession.AddFolderListener({onMessageAdded:()=>{/*mycode*/}}, Ci.nsIFolderListener.added);
gDbService.registerPendingListener(msgHdr.folder, {onHdrPropertyChanged:()=>{/*mycode*/}});}
And i add my buttons to interface elements:
"mail-toolbox",
"quick-filter-bar-collapsible-buttons",
"header-view-toolbar",
"attachment-view-toolbar",
"copyPopup",
"mailContext",
"folderPaneContext",
"emailAddressPopup",
"button-ForwardPopup",
"appMenu-addon-banners",
"mailKeys",
How i can do this in MailExtensions without experiment_apis?