4 ms·
Firefox is also starting its third extension model now. At first it was XUL/XPCOM where extensions could basically hook into ANYTHING in the browser, then there
by einaregilsson 11y ago
Firefox is also starting its third extension model now. At first it was XUL/XPCOM where extensions could basically hook into ANYTHING in the browser, then there was the Add-on SDK (formerly Jetpack), which is kind of nice, but a lot more limited, and now they're going with WebExtensions, because, well, Firefox basically does nothing but copy Chrome anymore ;)
But yes, that does make it complicated to figure out what's the best way to make stuff for Firefox.
- evilpie 11y ago>Firefox basically does nothing but copy Chrome anymore ;) Thanks If you can wait for the WebExtension API. If not use Jetpack. Don't write new extensions with XUL/XPCOM.
- einaregilsson 11y agoSorry, that was unnecessarily snarky. But it does seem like Chrome is leading and Firefox is following on a lot of things. The look, multiprocess, extension model, all things that started in Chrome. I was pleasantly surprised by Jetpack though, the jpm tool is very nice.
- vinay427 11y agoAs a primarily Firefox user on Linux I do agree with you about Firefox mostly following Chromium these days. It seemed like for a long time Chromium was adding in features Firefox had with improved implementations, but now Firefox appears to be lagging. The Firefox extension model did allow for extensions like DownThemAll which I don't think can survive in this generation of extension models.
- icebraining 11y agoYes; I have no problem with adding an API to make simple things easy, but TreeStyleTabs, VIMperator, Firebug, all of them need something more powerful than the Chrome model. I really hope they don't deprecate the old model and leave power users out in the cold. And frankly, the old model is not so bad; if you're building any kind of extension that does more than connecting a button to an HTTP call, the couple of hours you'll need to get started are irrelevant in the long run.