我正在制作一个vim风格的窗口管理器"这需要文本输入,就像小牛队中的Alfred或Spotlight(在浮动面板中)。
我遇到的问题是当我调用activateWithOptions时:在正在运行的应用程序中,它会从我的窗口中窃取焦点。我希望通过简单地将我的应用程序再次带到前台来解决问题,但似乎激活是在一个单独的线程上运行,我最终在原始应用程序被激活之前激活我的应用程序。
我在收到NSWorkspaceDidActivateApplicationNotification时尝试重新激活,但这也不起作用。
理想情况下,我希望暂停执行,直到应用程序因多种原因而被关注,因为这将是我进一步操作的窗口。
有人有任何建议吗?