我使用FireBreath创建一个跨浏览器插件,它利用了各自平台的一些本地库(用于Windows和Objective-C的一些基于.NET的DLL基于dylibs /框架苹果电脑)。本地库显示UI屏幕。为了提高可用性,如果用户有多重/扩展显示器设置,我希望原生用户界面显示在浏览器窗口当前所在的同一屏幕上。确定显示器与FireBreath浏览器窗口
如果一个标识符与浏览器窗口中的监视器可以被检索,可传递至其可以被配置为在该显示器上显示其用户界面的天然组分。我使用FireBreath的getWindowPosition()方法获取插件的矩形坐标,并使用该信息在Windows平台中识别正确的显示器。
然而,在Mac的返回的坐标似乎总是0(或1),不考虑显示器的在其上的浏览器窗口当前所在。我知道我们必须配置一个事件模型和一个绘图模型才能在Mac中使用。我尝试过以下事件/绘图模型组合,但没有取得太多成功。
1)可可/ CoreGraphics中 2)碳/ CoreGraphics中
在这方面的任何帮助是非常赞赏。如果还有其他方法可以实现,请分享。我想要实现的是识别当前活动浏览器窗口驻留在Mac上的显示器。我不确定这一点,但可以在Objective-C级别实现此目标(FireBreath级别没有任何更改)。另请注意,我想支持Safari,Firefox和Chrome浏览器。
感谢您的信息。我确实想出了一个解决方法,下面将对此进行解释。 –