addon-developer-support icon indicating copy to clipboard operation
addon-developer-support copied to clipboard

Add-On Update Tutorials

Open jobisoft opened this issue 5 years ago • 3 comments

Each of these tutorials is designed so it can be completed in a short amount of time. Please contact us via our support channels, if anything is unclear or you need further assistance.

All tutorials will be announced here. You can get automatically notified by subscribing to this issue.

jobisoft avatar Aug 21 '20 17:08 jobisoft

The first tutorial has been released!

Switch to the WebExtension i18n locale system

This tutorial includes the following steps:

  • convert your DTD and properties locale files to the new WebExtension i18n JSON format using a converter tool
  • remove usage of DTD files
  • remove usage of nsIStringBundle and properties files

This tutorial also shows, how to automatically localize i18n locale strings in WebExtension HTML windows, like option pages, browser action pages or any other page created using the windows API.

jobisoft avatar Oct 01 '20 20:10 jobisoft

The second tutorial has been released!

Convert add-on parts individually by using a messaging system

This tutorial includes the following steps:

  • introduce the concept of sending notifications between the WebExtension background page and privileged scripts executed by an Experiment API

messaging

One of the key concepts of the WindowListener update approach is to move smaller code segments from the Experiment into the WebExtension part without having to change everything at once. The introduced messaging system aims to allow just that.

jobisoft avatar Oct 06 '20 07:10 jobisoft

The third tutorial has been released!

Convert your legacy XHTML options page into a WebExtension HTML options page (keeping your preferences in Thunderbird's prefBranch for now)

This tutorial is based on the universal messaging introduced in the second tutorial:

  • switch to a messaging approach to get and set preferences
  • only the options page has to be touched, preferences remain in Thunderbirds preference system (prefBranch)
  • developers can continue to replace the remaining preference calls by messaging requests step-by-step
  • after all preference calls have been replaced, developers can switch from using Thunderbirds preference system to using WebExtension local storage by just loading a different preference handler into their background page.

jobisoft avatar Mar 22 '21 14:03 jobisoft