You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



Plugins

The only platform-specific code on the mozilla side of the plugin API is the code to load plugins. This is found in mozilla/modules/plugin/nglsrc/nsPluginHostImpl.cpp (the OS/2 code isn't yet checked in to mozilla.org cvs).

The code is straight-forward; it scans the plugins directory off of the mozilla executable for files matching np*.dll and tries to read off plugin information.

Eventually this code will be written in an XP fashion using a class derived from nsFileSpec. See nsObjectFrame.cpp.
There's a potential problem here: when mozilla is running as an embedded control, the plugins directory will not be found. This isn't the only place in the code that suffers from this problem. Either need an environment variable setting or an entry in OS2.INI. This is a more general problem which should be addressed via nsSpecialSystemDirectories in base.

The spec. for nsPluginWindow in nsPluginDefs.h says that the position values are in the OS/2 coordinate system. This doesn't happen at the moment. The solution lies in changing nsPluginViewer.cpp and nsObjectFrame.cpp.


Back to Raptor widget On to network library