aecreations / clippings

Clippings: an extension for Mozilla Firefox
20 stars 4 forks source link

Make "nativeMessaging" permission optional #458

Open aecreations opened 3 months ago

aecreations commented 3 months ago

The "nativeMessaging" permission (user-facing description "Exchange messages with programs other than Firefox") is currently mandatory, even though not all users will be using Sync Clippings. This has caused some users to be alarmed when this permission is requested during installation; some have even interpreted this to mean that Clippings will send their data to be harvested.

This permission should be moved to the optional_permissions key in the extension manifest. The permission would need to be requested when the user turns on Sync Clippings in extension preferences.

Confirm that the nativeMessaging permission is automatically turned on for users who are upgrading from a previous version of Clippings (this is confirmed for Thunderbird; see aecreations/clippings-tb#160). If so, then there's no need to perform any special post-upgrade handling.

aecreations commented 3 months ago

Pushed initial implementation. Still need to add a proper modal dialog in the extension preferences page asking the user to grant the optional permission, and to show the error notification when pushing sync changes has failed because the permission was revoked while Sync Clippings was turned on.

aecreations commented 2 months ago

Remaining work:

aecreations commented 1 month ago

Confirmed in version 7.0b1 that the nativeMessaging permission is automatically turned on for users who are upgrading from a previous version of Clippings.