X-Git-Url: https://git.r.bdr.sh/rbdr/captura/blobdiff_plain/ba17de891507da74fb07423803fd636a4457354c..8e9321304ca80e9ada7ac01058a5f4603cb37fab:/Captura/CapturaApp.swift?ds=sidebyside diff --git a/Captura/CapturaApp.swift b/Captura/CapturaApp.swift index d9c3ff0..eb6f02e 100644 --- a/Captura/CapturaApp.swift +++ b/Captura/CapturaApp.swift @@ -101,16 +101,15 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { // MARK: - URL Event Handler func application(_ application: NSApplication, open urls: [URL]) { - print("AAAH OPENING") if (CapturaSettings.shouldAllowURLAutomation) { for url in urls { if let action = CapturaURLDecoder.decodeParams(url: url) { switch action { case let .configure(config): - print("AAAH CONFIGURING \(config)") CapturaSettings.apply(config) case let .record(config): - print(config) + captureSessionConfiguration = CaptureSessionConfiguration(from: config) + NotificationCenter.default.post(name: .startAreaSelection, object: nil, userInfo: nil) } } } @@ -216,7 +215,7 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { let rectInWindow = button.convert(button.bounds, to: nil) let rectInScreen = button.window?.convertToScreen(rectInWindow) NSApp.activate(ignoringOtherApps: true) - recordingWindow = RecordingWindow(rectInScreen) + recordingWindow = RecordingWindow(captureSessionConfiguration, rectInScreen) recordingWindow?.makeKeyAndOrderFront(nil) recordingWindow?.orderFrontRegardless() boxListener = recordingWindow?.recordingContentView.$box @@ -250,7 +249,7 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { stopTimer = DispatchWorkItem { self.stopRecording() } - DispatchQueue.main.asyncAfter(deadline: .now() + 300, execute: stopTimer!) + DispatchQueue.main.asyncAfter(deadline: .now() + Double(captureSessionConfiguration.maxLength), execute: stopTimer!) outputFile = CapturaFile() if captureSessionConfiguration.shouldSaveMp4 { @@ -296,6 +295,7 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { func reset() { captureState = .idle updateImage() + captureSessionConfiguration = CaptureSessionConfiguration() stop() } @@ -383,7 +383,6 @@ class CapturaAppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { boxListener?.cancel() recordingWindow?.close() recordingWindow = nil - captureSessionConfiguration = CaptureSessionConfiguration() } private func uploadOrCopy() async -> Bool {