diff --git a/Sources/Kapture/CaptureController.swift b/Sources/Kapture/CaptureController.swift index 1598071..f7f5534 100644 --- a/Sources/Kapture/CaptureController.swift +++ b/Sources/Kapture/CaptureController.swift @@ -265,11 +265,12 @@ final class CaptureController: NSObject { guard isSelecting else { return event } switch type { - case .tapDisabledByUserInput: - CGEvent.tapEnable(tap: eventTap!, enable: true) - return event - case .tapDisabledByTimeout: - CGEvent.tapEnable(tap: eventTap!, enable: true) + case .tapDisabledByUserInput, .tapDisabledByTimeout: + // A timed-out tap must be re-enabled; guard against a torn-down tap. + if let tap = eventTap { + CGEvent.tapEnable(tap: tap, enable: true) + CaptureController.log("tap: re-enabled after \(type)") + } return event case .keyDown: if event.getIntegerValueField(.keyboardEventKeycode) == 53 { @@ -342,6 +343,7 @@ final class CaptureController: NSObject { ResultWindow.shared.show(image: ResultWindow.failureImage("Capture failed. Check Screen Recording permission.")) return } + CaptureController.log("capture done: \(image.width)x\(image.height) — showing result window") ResultWindow.shared.show(image: image) } } diff --git a/build-app.sh b/build-app.sh index 50ce6f4..a8cd724 100755 --- a/build-app.sh +++ b/build-app.sh @@ -108,9 +108,9 @@ cat > "$APP/Contents/Info.plist" <<'PLIST' CFBundleIconFile Icon CFBundleShortVersionString - 1.7.2 + 1.7.3 CFBundleVersion - 72 + 73 LSUIElement NSHighResolutionCapable