My question is very simple: Is it possible to pack plugins into extensions for Safari? For instance, the exact NPAPI plugins which work on Google Chrome also work on Safari. However in Chrome I'm shipping the plugins as a part of an extension (a CRX package). This is needed because HTML and JavaScript is injected into a specific web page, and this code uses the plugins. I do not see an option in Extension Builder to specify plugin files and I haven't come across any proper documentation saying that plugins cannot be packed into extensions.
Any help will be greatly appreciated!
The first comment:
I don't think that is supported. A workaround could be a custom installer that installs both the plugin and the extension. – Georg Fritzsche
This is the only possible way to do it! FYI: Apple guys are against the idea of extensions accessing native code (ie, plugins). An obvious security loop-hole, but a necessity here! :)
Related
From a user's perspective, an extension seems to be something that you go to the Chrome Web Store to get to extend the browser's functionality, whereas a plugin is something that you have to go to an external third party's website to get to extend the browser's functionality.
From a technical or implementation perspective, what is the difference between the two? I saw a similar question here (Is phplivex a extension or plugin?) but didn't get the answer I was looking for.
I am after the difference in the way an extension or plugin is developed and deployed (if any), and if there is any overlap between the two.
The words "extension" and "plugin" have lots of different (but related) meanings accross software products. These words are used interchangeably by many users (and developers). In browser extensions, they have a precise meaning, which is also visible through the UI. E.g. extensions (and apps) can be managed at chrome://extensions/, while plugins can be managed at chrome://plugins/ in Google Chrome.
In Chrome, Firefox, Opera and Safari, browser extensions refer to pieces of software that augment the browser using the browser extension APIs (see extension docs for Chrome, Firefox, Opera, Safari). Most of the modern browsers require extensions to be written using JavaScript. Extensions are usually platform-independent and run within a limited environment (Firefox is a notable exception to the latter). Extensions are usually deployed as a bunch of JavaScript files, other assets (HTML, CSS, media, ...) and configuration bundled in a browser-specific archive. Browser usually offer a seamless way to install the extension directly in the browser.
Plugins refer to NPAPI plugins, which are pre-compiled binaries that enhance the functionality of browsers via NPAPI. These plugins are invoked by inserting an <embed> or <object> tag in the document with a specific MIME-type. NPAPI plugins are OS-specific (though the source code can be platform independent) but not specific to a single browser. The capabilities of NPAPI are not constrained by the browser, so a bug in a browser plugin often have huge security implications (think of Java, Adobe Flash Player, Adobe PDF Reader). This is one of the reasons why NPAPI support is in the process of being completely dropped from Chrome. NPAPI plugins are usually installed outside the browser, e.g. via MSI installers on Windows.
As said in the introduction, "plugins" and "extensions" are used interchangeably. If you hear anyone talking about "(browser) plugins", odds are that they actually mean browser extensions.
Long time reader, first time asking a question.
Most of my development work has been in .NET using Visual Studio. Recently I took over maintenance of a website built on PHP and downloaded NetBeans as an IDE.
NetBeans has a very nice CSS property wizard for HTML projects that highlights the CSS rules in use for a particular element and lets you edit the rules directly. However, this doesn't appear to be available for PHP projects, even for pure HTML files within the project. Is that correct, or am I just missing some configuration? I can't seem to find any confirmation either way in the documentation or forums. (It would be unfortunate if it didn't work... it's a really useful feature.)
Thanks,
Terry
If you are referring to the visual CSS editing support that works with Google Chrome and the WebKit browser embedded in NetBeans, then this feature will be available for PHP projects in the upcoming NetBeans 7.4 release. See also this blog post: https://blogs.oracle.com/netbeanswebclient/entry/html5_development_with_java_ee
Hope this helps,
Petr
I want to write something similar to ActiveInbox.
In addition to original ActiveInbox, I need to add logic that will perform some actions on the emails that come.
What language(s) are programs like ActiveInbox written in?
Thank you
Activeinbox is a browser plugin, written in Javascript. It's easy to have a look inside: download the xpi (the Firefox version of the plugin). An xpi file is a zipfile, so open it with your zipfile manager of choice.
After that you should head over to Mozilla's developer site or a Chrome extension development tutorial to learn how to wite a Firefox/Chrome plugin.
Extensions can be written in pure Javascript on Chrome and Firefox.
I am looking for a general purpose NPAPI plugin that can used to invoke GetRight/FlashGet/OrbitDownloader/InternetDownloadManager/etc.
Has anyone written that already? It's like FlashGot for NPAPI browsers.
NPAPI plugins are for embedding alternative content into a page, not for generally extending the browser with new functionality.
What you are looking for are extension or addons (sadly and confusingly also sometimes called plugins) and those are mostly browser-specific - search first before writing your own.
Sorry for the newbie question, but how do I install or go about using an Extjs Extension or plugin I found through the extjs forums?
Just include the file and start using it - you don't need to register anything with ExtJS. :)
To clarify, include the file(s) after you have included the required Ext files. Plugins and extensions plug into or override existing code, so if the code being plugged into is not there it won't work. But yes, simply including the plugin/extension is the only requirement.
If you have problems with specific plugins or extensions, you'll want to ask directly on the Ext forums.