Open Bug 1363856 Opened 4 years ago Updated 2 years ago

[meta] Implement WebExtensions API to give access to specific preferences

Categories

(WebExtensions :: General, enhancement, P3)

enhancement

Tracking

(Not tracked)

People

(Reporter: bsilverberg, Unassigned)

References

(Depends on 4 open bugs)

Details

(Keywords: meta, Whiteboard: triaged)

There are a number of preferences to which some popular legacy add-ons need access. These APIs will use browserSetting [1] to manage which extension has control over the pref. If it makes sense, the APIs will be added to the privacy namespace, but often that is not where they will belong, so we need somewhere else to put them.

These will differ from Chrome's contentSettings API [2] in that these prefs control the browser globally - they do not change settings on a site by site basis. Andy suggested the namespace `browserSettings`, which sounds good to me, so I am going to run with that unless anyone has a better idea.

[1] https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/privacy/BrowserSetting
[2] https://developer.chrome.com/extensions/contentSettings
Depends on: 1339550
Depends on: 1363859
Depends on: 1363860
Depends on: 1364929
Depends on: 1364931
Depends on: 1364936
Depends on: 1364942
Depends on: 1364971
Depends on: 1364972
Depends on: 1364975
Depends on: 1368507
Will this allow WebExtensions to modify most prefs, or will this just have a small list?

In particular, will it allow WebExtensions to modify cookie prefs?
Flags: needinfo?(bob.silverberg)
(In reply to quality+bugzilla from comment #2)
> Will this allow WebExtensions to modify most prefs, or will this just have a
> small list?

This is only about granting access to a specific set of prefs, so the latter.

> 
> In particular, will it allow WebExtensions to modify cookie prefs?

Bug 1363860 will grant access to control cookie behaviour via a specific pref, but that's all that's planned for cookies at the moment. If there is something else you need, please open a separate bug for it, and feel free to make it block this bug.
Flags: needinfo?(bob.silverberg)
Depends on: 1288917
Depends on: 1362787
Depends on: 1313939
Depends on: 1361364
Depends on: 1376394
Depends on: 1322308
Depends on: 1379560
No longer depends on: 1313939
Depends on: 1374188
Depends on: 1391501
Keywords: meta
Depends on: 1400805
Without ability to get and set the following preferences, my Blend In extension loses most of its functionality if i convert it to WebExtension:
appversion.override
oscpu.override
platform.override
buildID.override
useragent.override

It will end up spoofing only HTTP User-Agent header (to say it's Windows, etc.), while all the navigator properties will be saying it's Linux, for instance.

Does this bug cover the above preferences, or should i open a new one?

P.S. I don't see the preferences in
https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/browserSettings
or elsewhere.
We consider each preference individually, so please file seperate bugs and making them block on this bug.
Depends on: 1414078
Depends on: 1414079
Depends on: 1414080
Blocks: 1414081
No longer blocks: 1414081
Depends on: 1414081
Depends on: 1414489
No longer depends on: 1414489
Depends on: 1417810
Depends on: 1427071
Product: Toolkit → WebExtensions
Priority: P2 → P3
Summary: [tracker] Implement WebExtensions API to give access to specific preferences → [meta] [tracker] Implement WebExtensions API to give access to specific preferences
Summary: [meta] [tracker] Implement WebExtensions API to give access to specific preferences → [meta] Implement WebExtensions API to give access to specific preferences
You need to log in before you can comment on or make changes to this bug.