FlowCrypt / flowcrypt-browser

FlowCrypt Browser extension for Chrome and Firefox
https://flowcrypt.com
Other
372 stars 48 forks source link

#5666 Add initial support for Thunderbird (improved setup flow) #5690

Closed martgil closed 3 weeks ago

martgil commented 2 months ago

This PR adds initial support for the Thunderbird desktop email client and the specific goal is to improve the set up flow accordingly.

close #5665 issue #5666


Tests (delete all except exactly one):


To be filled by reviewers

I have reviewed that this PR... (tick whichever items you personally focused on during this review):

tomholub commented 1 month ago

How is this looking so far? This looks like it could close https://github.com/FlowCrypt/flowcrypt-browser/issues/5665 nearly as is. Then you could work on the followup issues in separate PRs. It's always better to make PRs smaller if possible to make progress easier.

One thing I noticed is that the content_scripts/webmail folder already on master is quite disorganised and not so easy to work on to add Thunderbird (or any other webmail) support. I country try and refactor it a little bit myself, and that could make it easier for you.

tomholub commented 1 month ago

When https://github.com/FlowCrypt/flowcrypt-browser/pull/5748 is merged, you can follow https://github.com/FlowCrypt/flowcrypt-browser/pull/5748#issuecomment-2135555543 to close #5665 with this PR, then start working on #5666 in next issue. Let's address these one by one instead of trying to do all at once.

martgil commented 1 month ago

I understood completely, Tom. I'll be following your advice instead of making them work all at once.

martgil commented 4 weeks ago

Hi @sosnovsky - This one is ready for review. Thank you!

sosnovsky commented 4 weeks ago

Hi @martgil, can you please describe (or maybe make screenshots) of functionality which can be tested in this PR? I installed FlowCrypt extension in Thunderbird, configured it and now can see FlowCrypt button on toolbar. But when opening Encrypted inbox, it loads just empty page.

martgil commented 4 weeks ago

Hello @sosnovsky - For me everything works well. I'll be sharing a video screen capture and send it to you over secure email. Nothing much to test here aside from customize descriptions as if it were a Thunderbird extension. I have also figured small things about the compose button implementation that still requires thorough planning -- let's discuss it on the original issue after this one.

martgil commented 4 weeks ago

I installed FlowCrypt extension in Thunderbird, configured it and now can see FlowCrypt button on toolbar. But when opening Encrypted inbox, it loads just empty page.

I have re-checked it and it looks like it happens because the "chrome" object was tried to be access when it fact it should be the "browser" object for firefox extensions. I'll review again and hoping it would be fixed.

Edit: The above statement seems slightly incorrect. The "chrome" object is accessible within the extension's dev tools. I'd its the popup.html that was pinned in the Thunderbird tool bar is the one that needs to be improved - it would be reconfigured easily in a way the FlowCrypt settings were accessed in the Thunderbird mail's Add-ons Manager.

The "chrome" object doesn't seem to be accessible in a popup.html of an extension Addon.

martgil commented 4 weeks ago

I noticed that when accessing the extension not in the toolbar but in the Add-ons Manager of the Thunderbird mail settings and clicking the 🔧 icon, every extension page works fine. I'm investigating the issue further to develop a better hypothesis to share.

martgil commented 4 weeks ago

Hi @sosnovsky - I have fixed the issue you have reported. You should now be able to access the FlowCrypt Settings and FlowCrypt inbox directly through the default_popup.htm on the Thunderbird toolbar. Thank you!

martgil commented 4 weeks ago

As for testing, undergo normal setup using the Thunderbird extension build. Once you have finished the setup, try again accessing the FlowCrypt settings/inbox from the Thunderbird toolbar and it should work well.

martgil commented 4 weeks ago

@sosnovsky This one is ready for review. thank you!

martgil commented 4 weeks ago

Hello @sosnovsky - I have added the required changes, tested it and confirmed working well. Thank you!

martgil commented 3 weeks ago

Thank you @sosnovsky - I can now drop some of the few questions that needs to be answer regarding adding compose button into thunderbird UI on its dedicated GitHub issue. Thank you for your help.