Skip to content
This repository has been archived by the owner on Jul 26, 2020. It is now read-only.

WebExtensions: Polyfill for `onAdded` and `onRemoved` permission events for Firefox.

License

Notifications You must be signed in to change notification settings

fregante/webext-permissions-events-polyfill

Repository files navigation

Starting from Firefox 77 (June 2nd, 2020) this polyfill is no longer necessary. 🎉

You can keep this polyfill if you want to support older versions as well; It's automatically disabled where supported.

Keep in mind the known issue, however.

webext-permissions-events-polyfill

WebExtensions: Polyfill for permissions.onAdded and permissions.onRemoved events for Firefox.

Optional permissions can be added and removed by both Chrome and Firefox, but Firefox doesn't yet support Permission Events: https://bugzilla.mozilla.org/show_bug.cgi?id=1444294

This polyfill will add those two events to Firefox.

Install

You can just download the standalone bundle (it might take a minute to download) and include the file in your manifest.json, or:

npm install webext-permissions-events-polyfill
import 'webext-permissions-events-polyfill';

Usage

Include the polyfill as a background script and then refer to the original Permissions Events documentation.

This polyfill will exclusively work if permissions are requested/removed from the same page where the listener is. That means, if you run chrome.permissions.request in the background page, only the same exact page will receive the event.

If you want to request from options.html or popup.html, add your request here or send a PR to add support via runtime.sendMessage

chrome.permissions.onAdded.addListener(permissions => {
	console.log('New permissions');
	console.log(permissions.origins);
	console.log(permissions.permissions);
});

chrome.permissions.onRemoved.addListener(permissions => {
	console.log('Permissions that have been removed');
	console.log(permissions.origins);
	console.log(permissions.permissions);
});

Related

Permissions

Others

About

WebExtensions: Polyfill for `onAdded` and `onRemoved` permission events for Firefox.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published