X-Git-Url: https://git.r.bdr.sh/rbdr/captura/blobdiff_plain/242203487a56df9edd1aa6eceb106461ef62483c..e834022c9b363804d36045892a305204f2019216:/Captura/CapturaApp.swift?ds=sidebyside diff --git a/Captura/CapturaApp.swift b/Captura/CapturaApp.swift index 4dc65a4..933e00b 100644 --- a/Captura/CapturaApp.swift +++ b/Captura/CapturaApp.swift @@ -45,10 +45,17 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate { statusItem.isVisible = true statusItem.menu = NSMenu() - let recordItem = NSMenuItem(title: "record", action: #selector(CapturaAppDelegate.onClickStartRecording), keyEquivalent: "6") + let recordItem = NSMenuItem(title: "Record", action: #selector(CapturaAppDelegate.onClickStartRecording), keyEquivalent: "6") recordItem.keyEquivalentModifierMask = [.command, .shift] statusItem.menu?.addItem(recordItem) + statusItem.menu?.addItem(NSMenuItem.separator()) + + let preferencesItem = NSMenuItem(title: "Preferences", action: #selector(CapturaAppDelegate.onOpenPreferences), keyEquivalent: "") + statusItem.menu?.addItem(preferencesItem) + + let quitItem = NSMenuItem(title: "Quit", action: #selector(CapturaAppDelegate.onQuit), keyEquivalent: "") + statusItem.menu?.addItem(quitItem) } private func closeWindow() { @@ -63,6 +70,14 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate { NotificationCenter.default.post(name: .startAreaSelection, object: nil, userInfo: nil) } + @objc private func onOpenPreferences() { + print("Preferences pressed") + } + + @objc private func onQuit() { + NSApplication.shared.terminate(self) + } + // MARK: - App State Event Listeners @@ -93,7 +108,6 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate { if captureState != .selectingArea { captureState = .selectingArea recordingWindow = RecordingWindow() - print("Recording") } } @@ -111,5 +125,7 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate { func reset() { captureState = .idle + recordingWindow?.close() + self.recordingWindow = nil } }