firefox-extension | Firefox extension beginning with Firefox | Addon library
kandi X-RAY | firefox-extension Summary
kandi X-RAY | firefox-extension Summary
The FoxyProxy extension has been around for almost 15 years as of 2019. It has been rewritten several times and is still maintained by the original developer, Eric H. Jung, with large contributions by others (e.g. erosman, Jesper Hansen, Georg Koppen, and others). As of 2019/2020, ericjung and erosman are primary developers. Originally for Firefox, a Chrome edition was released years ago as well. It does not share the same codebase (yet), so this project is strictly for the Firefox edition. We hope they will share the same codebase sometime in 2020. Pre-Firefox 57 (Quantum) versions are not maintained here. They are stored in a private git repo which I will release to github when time permits.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Import a document from the XML file
- Parse the list of plain strings .
- Import a userproxy page to the server
- Replace active settings with active settings .
- Matches the given URL against the current proxy settings
- Make a proxy
- sync button
- Process the options .
- Checks the pattern based on the pattern
- Render the formatted log
firefox-extension Key Features
firefox-extension Examples and Code Snippets
Community Discussions
Trending Discussions on firefox-extension
QUESTION
I am following this tutorial to create add-ons for firefox.
When I run jpm run -b "C:\Program Files\Firefox Developer Edition\firefox.exe"
,
the console gives me the following warnings:
1546371425561 addons.xpi-utils WARN addMetadata: Add-on @celestus-firefox-extension is invalid: Error: File C:\Users\user\AppData\Local\Temp\3f4ff82f-9dfc-4065-a6c7-7e9719d0c286\extensions@celestus-firefox-extension.xpi does not contain a valid manifest(resource://gre/modules/addons/XPIInstall.jsm:557:11) JS Stack trace:
loadManifest@XPIInstall.jsm:557:11
awaitPromise@XPIProvider.jsm:188:3
syncLoadManifestFromFile@XPIInstall.jsm:620:10
addMetadata@XPIDatabase.jsm:2334:21
processFileChanges@XPIDatabase.jsm:2686:21
checkForChanges@XPIProvider.jsm:2581:34
startup@XPIProvider.jsm:2159:25
callProvider@AddonManager.jsm:203:12
_startProvider@AddonManager.jsm:652:5
startup@AddonManager.jsm:805:9
startup@AddonManager.jsm:2775:5
observe@addonManager.js:66:9
1546371425681 addons.webextension.screenshots@mozilla.org WARN
Loading extension 'screenshots@mozilla.org': Reading manifest: Invalid host permission: resource://pdf.js/1546371425681 addons.webextension.screenshots@mozilla.org WARN
Loading extension 'screenshots@mozilla.org': Reading manifest: Invalid host permission: about:reader*
Firefox opens as expected, but the icon that is supposed to be there is not there.
I can't find anything that could help me fix that. Some said it was because of a JSONwith an invalid format but everything is clear on my side.
Could anyone help me solve this problem?
edit: Just tried with a console with admin rights, does not change anything.
...ANSWER
Answered 2019-Jan-02 at 16:16The solution was just because of a newby mistake. I run firefox dev edition 65.0b7 but this tutorial works for firefox 57 and bellow.
Answer was given here
QUESTION
In reading about the File API and wanting to write data directly from an indexedDB database to the client disk instead of first building and holding a large blob in RAM to download to disk, there are a few basic items I'm not understanding.
In the MDN documents these two statements are found:
In Gecko, privileged code can create File objects representing any local file without user interaction.
If you want to use the DOM File API in chrome code, you can do so without restriction. In fact, you get one bonus feature: you can create File objects specifying the path of the file on the user's computer. This only works from privileged code, so web content can't do it.
- Where exactly does one write chrome code and/or Gecko priveleged code? Is this beyond a web extension? I've read and experimented with extensions; so, I'm not asking specifically about how to access them.
I'm not concerned about a 'normal' web page and server accessing the client disk. I know that it's not permitted inorder to protect the individual.
I'm interested in what can be done offline through the browser--with the aid of web extensions and/or a separate profile granting special permissions but without node.js, electron, etc.-- by an individual who knowingly wants to use the browser to do maybe what they should have built in the OS rather than the browser.
Put another way, if I want to use the browser just to run my javascript code to perform tasks all offline on my own machine, where is the privileged code written that gives access to these types of APIs that aren't subject to the security issues of a normal web page?
Is it still javascript or C++ in these areas?
Thank you.
This old question provides a link to their extension which includes the File API that writes to disk in a way that appears to provide a means to bypass the creation of a large blob of data. It's six years old but appears to contain what is needed, at least to get started.
I'm not referring to their trying to get around using indexedDB, but just that using this type of extension could allow for writing each object from the database directly to the client disk without first having to generate a large blob to download.
Attempt at employing Andrew Swan's suggestion
I'm trying to put the pieces together but have reached a point where am not sure how to continue. I wrote the code below in the background script of an extension. In attempting to employ Andrew Swan's suggestion, the plan is to intitiate a GET request for a text/csv file, which is intercepted and replaced by data extracted from database and written to the GET request by the stream filter.
First, make a GET request to a bogus url and listen for response, as follows:
...ANSWER
Answered 2018-Jun-23 at 15:57A couple of terms:
- "Gecko" is the rendering engine on which Firefox (and a few other applications like Thunderbird) is built
- "Chrome" in this context means the browser user interface and features, as opposed to the contents of a web page being displayed by the browser.
In Firefox, much of the browser chrome is implemented in Javascript. The code that implements the user interface needs to be able to do things that normal web pages cannot do (such as reading and writing the local filesystem). Therefore, this code runs with different privileges than Javascript that runs as part of a web page. The terms "privileged code", "chrome privileged code", "Gecko privileged code" are all different ways to describe the same thing: Javascript code that is built in to the browser and has access to capabilities that web pages do not have.
Prior to the Firefox Quantum (version 57) release, Firefox extensions were allowed to run privileged Javascript code. As you might imagine, this was fraught with problems for security, performance, and stability, among other things. With WebExtensions, extensions now run with the same level of privilege as regular web content (ie, they do not execute with elevated privileges). Some browser features are exposed to extensions through extension APIs.
So, if you're interested in what you can do from an extension, any documents on MDN that reference privileged code, are effectively irrelevant. There are not currently any APIs available to WebExtensions that would allow you to directly access the filesystem, but there is an open bug to add some this capability. (that bug has existed for quite some time, but I suspect there will be progress relatively soon...)
QUESTION
I would like to create a WebExtension that provides toggle buttons for some of the settings in about:config
(e.g. permissions.default.image
).
- Is it possible to do this in WebExtensions?
- If so, what is the API?
I belive that this question predates WebExtensions: A Firefox extension that changes a value in the about:config
This question is actually about print dialogs: Is it possible to set config settings on Firefox from a Addon
...ANSWER
Answered 2018-May-22 at 12:07This is not possible. Your best bet is to open a page informing your users of what they need to do in order to use your extension.
A limited amount of preferences is available in browserSettings and privacy.
https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/browserSettings https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/privacy
You could also write a native messaging program which changes the preferences on disk level. See https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Native_messaging
QUESTION
I'm actually adding a button on a website to install a web extension and I would like to have a callback telling me if it was successfull or not.
I came accross documentation showing this code to do so :
...ANSWER
Answered 2017-Aug-02 at 21:01The MDN documentation for InstallTrigger.install()
states:
In Firefox 3 the callback is no longer invoked unless the website performing the installation is whitelisted.
Given the wording, this means that in Firefox versions >= 3 the callback function is never called unless the website from which the installation is initiated is whitelisted. It is highly unlikely that your website is whitelisted, thus the callback function will not be called. Other than requesting Mozilla to whitelist your website (I would consider this to be very unlikely), there is nothing you can do to get the callback executed just from the invocation of InstallTrigger.install()
.
The alternative, assuming you have control of the code for the extension, is for the extension to notify the website that it's been installed. How to do this will depend on the type of extension which you are installing. Presumably, it will be a WebExtension. If so, there are a few methods: window.postMessage()
, a CustomEvent, or have the extension execute an already existing function/set a variable in the page context.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install firefox-extension
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page