aecreations / clippings-tb

Clippings for Thunderbird
Other
2 stars 0 forks source link

Port remaining legacy XUL to MailExtension #157

Open aecreations opened 9 months ago

aecreations commented 9 months ago
  1. Remove automatic migration from Clippings 5.x for both Clippings data and user preferences.
  2. Eliminate status bar icon in the main three-pane window.
  3. Move the status bar icon in the composer to the toolbar - use the compose_action key in the extension manifest.
  4. Port the ability to create a new clipping from clipboard to use the Clipboard API[1]. This will require adding an optional permission to the manifest; see the linked documentation for the permissions that need to be requested.
  5. Port the ability to paste a clipping as normal text or quoted text. Note that there is currently no MailExtension API available to insert text into the composer as quoted text; an enhancement to the API may be needed, which should be pursued ASAP.
  6. Use MailExtension popup windows for the placeholder prompts and the prompt to paste as normal or quoted text.
  7. Use MailExtension popup window for the keyboard paste dialog.
  8. Migrate processing of placeholders to the background script.
  9. Move remaining XUL code for the compose window overlay to the background script.
  10. Remove usages of the experimental APIs found under the /api folder.

-- [1] https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API

aecreations commented 7 months ago

The setting to show the Paste Options dialog currently applies to each composer window; changing it from one composer window doesn't affect all windows.

aecreations commented 7 months ago

Remaining to do:

  1. Further improvements to the paste clipping options dialog. Handle the case where: 1) the user closes the message composer while the dialog is still open; and, 2) the user forgets or abandons the previous clipping paste.
  2. Create a new clipping from the clipboard, using the Clipboard API. This should be exposed in Clippings Manager.
aecreations commented 3 months ago

Remaining work:

  1. Create a new clipping from the clipboard, using the Clipboard API. The extension permission prompt should be in a proper lightbox modal.
  2. Paste options dialog keyboard interaction: handle ENTER for accept and ESC for cancel.