Gecko:Moving Plugins To Content: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 8: Line 8:
** Extend nsIObjectFrame with methods the instance owner needs to call (if any)
** Extend nsIObjectFrame with methods the instance owner needs to call (if any)
** Make the instance owner own a content node rather than a frame (probably)
** Make the instance owner own a content node rather than a frame (probably)
** Provide method NS_NewPluginInstanceOwner or something. also takes care of Init
* Move that file to content (or, directly add it in content)
* ...
* ...
* Create the owner on the content node. Provide a method on nsIObjectFrame to tell it that the plugin instance owner changed. provide a method to get the current instance owner. (Similar to how nsIImageLoadingContent works)


= Plugins without frames =
= Plugins without frames =

Revision as of 22:05, 2 January 2006

bug 90268

Christian Biesinger <cbiesinger@web.de> will probably work on this

Steps:

  • Move nsPluginInstanceOwner to its own file
    • Make it implement a new interface nsPIPluginInstanceOwner which has all the methods needed for objectframe<->instanceowner communication
    • Extend nsIObjectFrame with methods the instance owner needs to call (if any)
    • Make the instance owner own a content node rather than a frame (probably)
    • Provide method NS_NewPluginInstanceOwner or something. also takes care of Init
  • Move that file to content (or, directly add it in content)
  • ...
  • Create the owner on the content node. Provide a method on nsIObjectFrame to tell it that the plugin instance owner changed. provide a method to get the current instance owner. (Similar to how nsIImageLoadingContent works)

Plugins without frames

What should happen with plugins that have no frame?

Possibilities, that I can think of right now: