我正在编写一个菜单栏应用程序,当按下全局热键时显示一个窗口。应用程序没有dock图标,也没有正常的菜单(只有statusItem)。
在激活应用程序之前,假设我在chrome聚焦的网页上有一个文本框。当我的申请被驳回时,我如何重新聚焦文本框?
如果您熟悉文本扩展器,它们的功能类似
我明白了。你需要一个NSRunningApplication:
@implementation AppDelegate {
NSRunningApplication *_previousApplication;
}
然后在激活之前存储以前的应用程序:
_previousApplication = [[NSWorkspace sharedWorkspace] frontmostApplication];
最后,在您停用后,只需恢复另一个应用程序:
[_previousApplication activateWithOptions:NSApplicationActivateIgnoringOtherApps];