Re: Electrolysis update: out-of-process plugins and more
Chris Jones <[email protected]>
| Newsgroups | gmane.comp.mozilla.devel.dom |
|---|---|
| Message-ID | <[email protected]> |
Jeff Muizelaar wrote: > > On 15-Jun-09, at 2:05 PM, Chris Jones wrote: >> >> We have a complete short-term story for plugin graphics on X11. >> Windowed plugins are very easy to support, as X windows are identified >> with cross-process XID's; we need only to create the window in the >> Gecko process and ship the ID across to the plugin. Windowless >> plugins are more difficult to support, but we can reuse som work done >> for Hildon; essentially, we create a window for the windowless plugins >> and create a surface within that window for the plugin to draw to, but >> use Xdamage and Xcomposite to composite the Gecko window with the >> plugin's window. (Graphics folks, if this is a bad summary of this >> technique, please correct me.) Ben Turner will likely be working on >> plugin graphics for Windows, but we're not yet sure of our approach to >> plugin graphics for OS X. > > Shouldn't windowless plugins be easier to support then windowed ones? Is > there any reason you can't just create a surface in a region of memory > shared between the plugin process and the Gecko process? It's not clear > to me what problems are solved by using Xdamage and Xcomposite. > It's just disgustingly easy to ship XID's from the content to plugin process. Also, all of the Xdamage/Xcomposite code is written and tested. Again, this is the short-term (i.e. something shippable as soon as possible) and not long-term (i.e. something we're entirely happy with) plan. In the long run, your shared surface idea is what we want. > This shared memory approach should also work fine on OS X. > Interesting! We should talk more about this, maybe in #gfx. Cheers, Chris