Creating new window in webExtension failes in Firefox ESR
I'm trying to create a new window in WebExtension (https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/windows/create) by using code below:
var creating = browser.windows.create();
As documentation said "createData" object is optional, above code works on Firefox quantum(57.0.0), but it fails in Firefox ESR (52.5.0) with below error:
createData is null
由bmossavari于
被采纳的解决方案
More generally, there is extension developer support over here:
https://discourse.mozilla.org/c/add-ons/development
This forum focuses on end-user issues.
定位到答案原位置 👍 1所有回复 (6)
Hello, this is because Firefox 57 is more optimized for WebExtensions. Firefox 52 ESR was back when Firefox had more support for old XUL based 'legacy' add-ons.
Thank you Mkll, I know firefox ESR supports legacy addons, but I think it should supports WebExtension too and it did (other parts of my addons works as expected only create window return 'createData is null' ) Maybe it's a bug in browser.window.create API, maybe i should report it as a bug on bugzilla
When Firefox 52 ESR was released not all all the new API's needed for WebExtensions were completed. Version by version the new API's were added, and the older API's were deprecated.
bmossavari said
Maybe it's a bug in browser.window.create API, maybe i should report it as a bug on bugzilla
Have you tested it in Firefox 57? Don't report it as a bug if it works in 57.
What happens if you pass an empty object:
var creating = browser.windows.create({});
Not that you should have to, just wondering whether Firefox is looking for something in particular and that might provide a more helpful error message.
For reference: https://developer.mozilla.org/Add-ons/WebExtensions/API/windows/create
由jscher2000 - Support Volunteer于
选择的解决方案
More generally, there is extension developer support over here:
https://discourse.mozilla.org/c/add-ons/development
This forum focuses on end-user issues.
Thank you jscher2000 for clarification
jscher2000 said
What happens if you pass an empty object: var creating = browser.windows.create({}); Not that you should have to, just wondering whether Firefox is looking for something in particular and that might provide a more helpful error message. For reference: https://developer.mozilla.org/Add-ons/WebExtensions/API/windows/create
passing empty object did the trick