2011-04-29 40 views

回答

0

不是直接。根据你想要的平台(你应该真的指定类似的东西),可能有办法。

例如,在Windows上,您可能能够获得浏览器HWND(带NPNVnetscapeWindow的NPN_GetValue),然后使用Windows API调用检查该窗口的状态。

在Mac上,你会遇到更困难的时刻;你可能会从传递给NPP_SetWindow的剪辑信息中直觉得出,但是这并不能告诉你浏览器是否被最小化,或者插件(甚至标签)是否不可见。再次,您需要尝试找出一种方法来使用系统调用来找到回到真实窗口的方式,但在Mac上这将是非常不平凡的。

Linux我不确定;如果你使用XEmbed(只有Chromium支持的东西),你会得到一个GtkSocket,如果你可以使用它来回到你需要检查最小化状态的地方,我就不知道了。

所以简短的答案是否定的; NPAPI不​​提供这样的事情。你只需要尝试找到它提供的信息,就可以给你足够的信息来破解它。

0

因为我在使用Core动画层。我放入一个计时器来检查candraw回调的频率。如果两个回调之间的时间差大于一秒,我假定我的插件被最小化或隐藏。