diff --git a/camera/android/src/main/java/com/capacitorjs/plugins/camera/CameraPlugin.java b/camera/android/src/main/java/com/capacitorjs/plugins/camera/CameraPlugin.java index c952d0e57..a5598e39d 100644 --- a/camera/android/src/main/java/com/capacitorjs/plugins/camera/CameraPlugin.java +++ b/camera/android/src/main/java/com/capacitorjs/plugins/camera/CameraPlugin.java @@ -707,7 +707,8 @@ private Uri getTempImage(Uri u, ByteArrayOutputStream bitmapOutputStream) { try { bis = new ByteArrayInputStream(bitmapOutputStream.toByteArray()); newUri = saveImage(u, bis); - } catch (IOException ex) {} finally { + } catch (IOException ex) { + } finally { if (bis != null) { try { bis.close(); diff --git a/camera/src/web.ts b/camera/src/web.ts index 2c8e11188..3d0ec934b 100644 --- a/camera/src/web.ts +++ b/camera/src/web.ts @@ -23,7 +23,7 @@ export class CameraWeb extends WebPlugin implements CameraPlugin { document.body.appendChild(actionSheet); } actionSheet.header = options.promptLabelHeader || 'Photo'; - actionSheet.cancelable = false; + actionSheet.cancelable = true; actionSheet.options = [ { title: options.promptLabelPhoto || 'From Photos' }, { title: options.promptLabelPicture || 'Take Picture' }, @@ -36,6 +36,9 @@ export class CameraWeb extends WebPlugin implements CameraPlugin { this.cameraExperience(options, resolve, reject); } }); + actionSheet.addEventListener('onCanceled', async () => { + reject(new CapacitorException('User cancelled photos app')); + }); } else { this.cameraExperience(options, resolve, reject); }