From 046f8b647635e38fad694be8c848c9b26cae3199 Mon Sep 17 00:00:00 2001 From: Marc Rousavy Date: Mon, 8 Jun 2026 11:26:07 +0200 Subject: [PATCH] fix: Trigger scan as soon as Barcode is detected --- .../ios/DataScannerScanSession.swift | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/packages/react-native-data-scanner/ios/DataScannerScanSession.swift b/packages/react-native-data-scanner/ios/DataScannerScanSession.swift index f87e3ab..c9ef6c7 100644 --- a/packages/react-native-data-scanner/ios/DataScannerScanSession.swift +++ b/packages/react-native-data-scanner/ios/DataScannerScanSession.swift @@ -65,6 +65,25 @@ final class DataScannerScanSession: NSObject, DataScannerViewControllerDelegate, @MainActor func dataScanner(_ dataScanner: DataScannerViewController, didTapOn item: RecognizedItem) { + finish(with: item) + } + + @MainActor + func dataScanner( + _ dataScanner: DataScannerViewController, + didAdd addedItems: [RecognizedItem], + allItems: [RecognizedItem] + ) { + for item in addedItems { + if case .barcode = item { + finish(with: item) + return + } + } + } + + @MainActor + private func finish(with item: RecognizedItem) { switch item { case .barcode(let barcode): do {