Sha256: f7481a9cd245f81339e351265af5198dc5f9bb98705b66adb6d64b48b39d4aab
Contents?: true
Size: 778 Bytes
Versions: 2
Compression:
Stored size: 778 Bytes
Contents
import AppKit import HotKey import Carbon final class ViewController: NSViewController { // MARK: - Properties @IBOutlet var pressedLabel: NSTextField! private var hotKey: HotKey? { didSet { guard let hotKey = hotKey else { pressedLabel.stringValue = "Unregistered" return } pressedLabel.stringValue = "Registered" hotKey.keyDownHandler = { [weak self] in self?.pressedLabel.stringValue = "Pressed at \(Date())" } } } // MARK: - NSViewController override func viewDidLoad() { super.viewDidLoad() register(self) } // MARK: - Actions @IBAction func unregister(_ sender: Any?) { hotKey = nil } @IBAction func register(_ sender: Any?) { hotKey = HotKey(keyCombo: KeyCombo(key: .r, modifiers: [.command, .option])) } }
Version data entries
2 entries across 2 versions & 2 rubygems