0

我正在制作一个 vim 风格的“窗口管理器”,它接受文本输入,很像 Mavericks 中的 Alfred 或 Spotlight(在浮动面板中)。

我遇到的问题是当我调用 activateWithOptions: 在正在运行的应用程序上时,它会从我的窗口中窃取焦点。我希望通过简单地将我的应用程序再次置于前台来解决问题,但是似乎激活在单独的线程上运行,并且我最终在原始应用程序被激活之前激活了我的应用程序。

当我收到 NSWorkspaceDidActivateApplicationNotification 时,我尝试重新激活,但这也不起作用。

理想情况下,我想暂停执行,直到应用程序由于多种原因被聚焦,因为那将是我进一步操作的窗口。

有没有人有什么建议?

4

0 回答 0