Skip to content

Add support for extensions that need multiple options pages with independent options #13

Description

@tdulcet

The Thunderbird CloudFile/FileLink API needs to have multiple "management" pages for configuring each account the user adds. Each page is the same, but they need to have independent options that are saved to and loaded from storage.

I am aware that part of this can be done with the AutomaticSettings.Trigger.addCustomLoadOverride() and AutomaticSettings.Trigger.addCustomSaveOverride() functions, but it requires a lot of nasty hacks which eliminate many of the benefits of this library. For reference, here is the recommend way to get and set options in these "management" pages without this library. It would also be helpful if the addCustomLoadOverride() function accepted an option group, like the addCustomSaveOverride() function does, instead of having to call it for every individual option.

For example, I would like to use this library to create a FileLink provider for Firefox Send, the end-to-end encrypted file sharing service originally created by Mozilla, which is now called just Send after it was discontinued by Mozilla last year and now maintained by the community.

Here is an example of what these "management" pages look like in Thunderbird's UI:
image

It is a mockup of the proposed extension with one account. Users can select one of their accounts on the right and then set the options on the left. Everything on the top and left is Thunderbird's UI, while the rest starting with "📤 Thunderbird Send" is the options page.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions