MOZILLA_PLUGIN_LIBS=`$(PKGCONFIG) -libs mozilla-plugin`ĬXXFLAGS+=-fno-rtti -fno-exceptions -Wl,-z,defs -shared \ MOZILLA_PLUGIN_CFLAGS=`$(PKGCONFIG) -cflags mozilla-plugin` Thus on linux I have (which may or may not be correct): The NS_GetValue entry point and the getvalue function table pointer apparently may point to the same function as long as it can deal with NULL instance references.Ĭompiling a plugin is a bit sparsely documented but the gist seems to be to use pkg-config mozilla-plugin and to add a few choice flags. So far only two actual includes seem sufficient: Clarification needed.Īpparently only a few files are really needed for developing plugins. "XPCOM plugins" may or may not be different from "xulrunner extensions". "And we've completely removed support for XPCOM plugins from Mozilla 1.9.2 (Firefox 3.6). This can be done by exporting the desired scripting interfaces through implementing NPObject derivates. The browser will create a new instance by calling the new function pointer for each place in a webpage that the plugin is needed, and all the other functions will be called with a reference to such an instance.Įnabling script interaction with the plugin should be done using the "NPAPI scripting extensions". The second table contains pointers to functions the plugin exports to the browser to call. The table necessairily will end up as a global for the plugin so it may as well be a statically allocated global, though there is a shutdown entry point to clean up any dynamic allocations after the last instance is destroyed. This table apparently must be copied to local storage, but I haven't found why. The first table contains pointers to functions inside the browser that the plugin may call. Those entry points together must mainly do two things: One) tell the browser what MIME-type(s) this plugin supports, and two) setup two function pointer tables. Netscape Plugin Application Programming Interface (NPAPI) conforming plugins have a number of entry points that vary across platforms a bit in number and precise function per entry point. This page contains some hard-won but still incomplete information that the boys at mozilla conveniently forget to tell you and that may be useful for developing mozilla plugins (such as our vlc plugin).
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |