89
edits
(Created page with '== Background == Over the past few months a number of us have been discussing some of the issues facing NPAPI with recent developments in browser technology. First among the ch...') |
|||
| Line 1: | Line 1: | ||
== Background == | == Background == | ||
Over the past few months a number of us have been discussing some of the issues facing NPAPI with recent developments in browser technology. | Over the past few months a number of us have also been discussing some of the issues facing NPAPI as a platform independent browser plugin framework. First, we feel there are some changes needed to NPAPI to keep up with recent developments in browser technology, such as out of process plugin execution. Second, while NPAPI provides an extensive framework for writing plugins, many end up relying on operating system or browser platform specific features. This is especially true of windowed plugins that implement 2D or 3D graphics, where almost the entirety of the plugin may consist of operating system specific graphics or event APIs. Third, both windowed and windowless plugins are difficult to composite with other layers correctly today, making it difficult for a page author to achieve the same look and feel across browsers and operating systems. This proposal intends to be a starting point for addressing these issues, and consists of four topics. | ||
# Giving a clear semantics to NPAPI across browsers that implement plugins in a separate process from the renderer/browser itself. | |||
# Integrating plugin rendering with the browser's compositing process, allowing HTML overlays, etc., to work correctly with plugins. | |||
# Defining events, especially in a way that is common across operating systems and browsers. | |||
# Determining which plugins are available to a browser without loading the plugin. Although a much smaller issue, it is currently one of the more platform specific portions of NPAPI and one that lends itself to a relatively simple solution. | |||
A somewhat related issue is how to extend NPAPI to provide platform independent access to new hardware or software features such as webcams, microphones, etc. While certainly important, this is deferred to future discussions. | |||
== Out of process plugins == | == Out of process plugins == | ||
edits