我正在创建一个不应该有UI的NPAPI插件(仅限Javascript使用)。我应该使用什么窗口模型(windowed / windowless / xembed)来支持尽可能多的浏览器(和浏览器版本)?
我目前正在实施以下功能:
NPP_SetWindow
:什么都不做,请回复NPERR_NO_ERROR
NPP_Event
:什么都不做,返回kNPEventNotHandled
(0)NPP_SetValue
:什么都不做,请回复NPERR_NO_ERROR
NPP_GetValue
:如果要求NPPVpluginNeedsXEmbed
,请在浏览器支持时回答“是”(NPNVSupportsXEmbedBool
),否则对于这个插件我支持Linux& Windows目前仅限。 Chrome on Linux (bug 38229)需要NPPVpluginNeedsXEmbed
,但有些旧版本可能不支持the MDC page,因为只有Firefox 2.0+支持XEmbed的示例插件。
答案 0 :(得分:2)
我见过的最常见的是不关心窗口模式并将对象标记设置为1x1(你可以尝试0x0,但我看到与之相关的浏览器错误)大小,在这种情况下它你使用什么窗口模式并不重要。但是,我会自己做无窗口,因为它不会导致浮动在所有其他DOM元素上的标志块,而正常窗口(XEmbed或非)插件会给你。
如果设置了FB_GUI_DISABLED标志,这就是FireBreath的作用。