Description
Summary 💡
It would be great if the extension worked in Firefox as it does in Chrome.
Examples 🌈
See Chrome behavior.
Motivation 🔦
Not everyone uses Chrome. 🙂
Additional Information ℹ️
I don't know anything about browser extensions, so take this with a grain of salt.
I glanced around and it sounds like most extensions should work in both browsers (perhaps with a little tweaking). I ran the Testing Playground extension through https://www.extensiontest.com/ and it had no errors or compatibility problems, just a couple warnings (raw results are available at the bottom of this issue). Hoping it would Just Work™️, I temporarily installed a local copy in Firefox. This revealed a couple different warnings:
Reading manifest: Warning processing background.persistent: Event pages are not currently supported. This will run as a persistent background page.
Reading manifest: Warning processing version_name: An unexpected property was found in the WebExtension manifest.
While it does load, it doesn't seem to do anything. It just looks like this:
Clicking the "select element" button does highlight things and feels like it's allowing me to select an element, but once I click on an element, nothing changes in the dev tools panel.
Thanks for considering this request!
ExtensionTest.com Results
{ "compat": [], "errors": [], "warnings": [ { "message": "Using 'eval' has strong security and performance implications.", "description": "In most cases the same result can be achieved differently, therefore it is generally prohibited", "locations": [ { "file": "manifest.json" } ] }, { "message": "The Function constructor is eval.", "description": "Evaluation of strings as code can lead to security vulnerabilities and performance issues, even in the most innocuous of circumstances. Please avoid using `eval` and the `Function` constructor when at all possible.'", "locations": [ { "file": "window/testing-library.js", "line": 90 }, { "file": "window/testing-library.js", "line": 90 }, { "file": "content-script/contentScript.js", "line": 1 }, { "file": "content-script/contentScript.js", "line": 90 }, { "file": "content-script/contentScript.js", "line": 90 }, { "file": "devtools/pane.js", "line": 1 }, { "file": "devtools/pane.js", "line": 90 }, { "file": "devtools/panel.js", "line": 1 }, { "file": "devtools/panel.js", "line": 90 }, { "file": "devtools/panel.js", "line": 90 } ] }, { "message": "Unsafe assignment to innerHTML", "description": "Due to both security and performance concerns, this may not be set using dynamic values which have not been adequately sanitized. This can lead to security issues or fairly serious performance degradation.", "locations": [ { "file": "content-script/contentScript.js", "line": 90 }, { "file": "content-script/contentScript.js", "line": 90 }, { "file": "content-script/contentScript.js", "line": 90 }, { "file": "devtools/pane.js", "line": 1 }, { "file": "devtools/pane.js", "line": 1 }, { "file": "devtools/panel.js", "line": 1 }, { "file": "devtools/panel.js", "line": 1 } ] } ] }