У меня есть глобальная горячая клавиша для моего приложения, но после того, как оно вызвано, оно ищет следующую нажатую букву, чтобы изменить его поведение.Проблема в том, что письмо все еще набирается в текстовом редакторе, если оно открыто.Есть ли способ остановить его прохождение?
Редактировать: Вот код, который у меня есть до сих пор:
let options = NSDictionary(object: kCFBooleanTrue, forKey: kAXTrustedCheckOptionPrompt.takeUnretainedValue() as NSString) as CFDictionary
let trusted = AXIsProcessTrustedWithOptions(options)
if (trusted) {
NSEvent.addGlobalMonitorForEvents(matching: .keyDown, handler: self.handler)
}
Метод обработчика:
func handler(event: NSEvent!) {
let key = event.keyCode
let flag = event.modifierFlags.rawValue
if waitForNextLetter {
waitForNextLetter = false
// don't let this letter be dispatched
}
if key == 0 && flag == 655650 {
waitForNextLetter = true
}
}