Skip to content

Commit 953dff7

Browse files
author
Calvin Ren
committed
fix from pr review
1 parent 0f5f707 commit 953dff7

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

packages/image_picker/image_picker_ios/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## 0.8.13+4
22

3-
* Fixes camera confirmation taps leaking through the picker on some iOS versions (e.g., iOS 26).
3+
* Fixes camera confirmation buttons (e.g., Retake/Use Photo) taps passing through to the underlying Flutter UI while the picker is dismissing on some iOS versions (e.g., iOS 26).
44

55
## 0.8.13+3
66

packages/image_picker/image_picker_ios/ios/image_picker_ios/Sources/image_picker_ios/FLTImagePickerPlugin.m

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -535,9 +535,10 @@ - (void)picker:(PHPickerViewController *)picker
535535
- (void)imagePickerController:(UIImagePickerController *)picker
536536
didFinishPickingMediaWithInfo:(NSDictionary<NSString *, id> *)info {
537537
NSURL *videoURL = info[UIImagePickerControllerMediaURL];
538+
__weak typeof(self) weakSelf = self;
538539
[picker dismissViewControllerAnimated:YES
539540
completion:^{
540-
[self removeInteractionBlocker];
541+
[weakSelf removeInteractionBlocker];
541542
}];
542543
// The method dismissViewControllerAnimated does not immediately prevent
543544
// further didFinishPickingMediaWithInfo invocations. A nil check is necessary
@@ -624,9 +625,10 @@ - (void)imagePickerController:(UIImagePickerController *)picker
624625
}
625626

626627
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
628+
__weak typeof(self) weakSelf = self;
627629
[picker dismissViewControllerAnimated:YES
628630
completion:^{
629-
[self removeInteractionBlocker];
631+
[weakSelf removeInteractionBlocker];
630632
}];
631633
[self sendCallResultWithSavedPathList:nil];
632634
}
@@ -694,7 +696,7 @@ - (void)addInteractionBlocker {
694696
}
695697
self.previousKeyWindow = presentingWindow;
696698
UIWindow *blockerWindow;
697-
if (@available(iOS 13.0, *&&presentingWindow.windowScene)) {
699+
if (@available(iOS 13.0, *) && presentingWindow.windowScene) {
698700
blockerWindow = [[UIWindow alloc] initWithWindowScene:presentingWindow.windowScene];
699701
} else {
700702
blockerWindow = [[UIWindow alloc] initWithFrame:presentingWindow.bounds];

0 commit comments

Comments
 (0)