@@ -12,7 +12,7 @@ import UIKit
12
12
@available ( macCatalyst 14 . 0 , * )
13
13
extension CodeScannerView {
14
14
15
- public class ScannerViewController : UIViewController , UIImagePickerControllerDelegate , UINavigationControllerDelegate , AVCaptureMetadataOutputObjectsDelegate {
15
+ public class ScannerViewController : UIViewController , UIImagePickerControllerDelegate , UINavigationControllerDelegate , AVCaptureMetadataOutputObjectsDelegate , UIAdaptivePresentationControllerDelegate {
16
16
private let photoOutput = AVCapturePhotoOutput ( )
17
17
private var isCapturing = false
18
18
private var handler : ( ( UIImage ) -> Void ) ?
@@ -46,6 +46,7 @@ extension CodeScannerView {
46
46
isGalleryShowing = true
47
47
let imagePicker = UIImagePickerController ( )
48
48
imagePicker. delegate = self
49
+ imagePicker. presentationController? . delegate = self
49
50
present ( imagePicker, animated: true , completion: nil )
50
51
}
51
52
@@ -92,6 +93,11 @@ extension CodeScannerView {
92
93
dismiss ( animated: true , completion: nil )
93
94
}
94
95
96
+ public func presentationControllerDidDismiss( _ presentationController: UIPresentationController ) {
97
+ // Galery is no longer being presented
98
+ isGalleryShowing = false
99
+ }
100
+
95
101
#if targetEnvironment(simulator)
96
102
override public func loadView( ) {
97
103
view = UIView ( )
0 commit comments