This Sunday, March 3, we will be landing a patch on Nightly to pref on the new extension opt-in for Private Browsing. This feature is currently desktop only. To avoid much rehash, here’s part of the prior intent email:

“The extensions API includes support for an "incognito" entry in the extension manifest where an extension may opt-out of running in private browsing windows. Chrome has since made that the default, and requires an opt-in by the user to run an extension in private browsing. We're playing a bit of followup on this, since we bypassed the feature during the crazy ramp-up for webextensions.”

You may manually pref this feature on now (best to have Nightly March 1) by flipping the extensions.allowPrivateBrowsingByDefault preference to false, then restarting Firefox.

This feature has been worked on by the entire web extensions team as well as a quite number of individuals on other teams. I know I’d forget names, so I won’t mention any, I just want to express thanks to all those involved.

Here’s some notes that may be useful. This email will be followed up with a blog post by Mike Conca. More notes below the fold.

Best Regards,
Shane

---

Some notes on how the feature works:

* Currently enabled extensions will automatically get permission on upgrade (or restart after pref flip). This is done to avoid breaking any work flow or surprising users by disabling extensions they thought would be running.

* New installs of extensions do not get the permission. A post installation panel allows you to easily give permission, or you may do so in about:addons.

* When using permanent private browsing, extensions automatically have permission to run. Permission is not changeable in this mode and any UI specific to this feature will not appear.

* You will see flags in about:addons to easily identify those extensions that have permission.

* In about:addons, entering the details of an extension will allow you to change the permission.

* Extensions must restart when the permission is changed (this happens automatically).

Extension Developer Notes:

* You may opt-out of any private browsing access by using "incognito: not_allowed" in your extension manifest.

* "incognito: split" is not supported at this time.

* Developers may use the extension.isAllowedIncognitoAccess API [1] to determine whether they have been granted permission. There is no API to programmatically request this permission, the user must take action to grant permission.

* In general, when permission has not been granted, your extension should continue to work as-is unless your extension explicitly uses features that require private browsing access. E.g. using windows.create to open a new private browsing window.

* Some APIs that do not leak data from private windows do not require the permission and may still affect private windows. browserSettings [2] is a good example, where an extension may make changes to the general behavior of Firefox without gaining access to private contexts.

Known Caveats:

* Bug 1526299: Some proxy extensions that use the proxy.settings API will require permission to use the API even in normal windows. Other proxy APIs will work as expected. We are working to address this and will be reaching out to authors.

[1] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/extension/isAllowedIncognitoAccess

[2] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserSettings
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to