@@ -95,7 +95,7 @@ private static class PendingCallState {
95
95
public final @ Nullable VideoSelectionOptions videoOptions ;
96
96
public final @ NonNull Messages .Result <List <String >> result ;
97
97
98
- private PendingCallState (
98
+ PendingCallState (
99
99
@ Nullable ImageSelectionOptions imageOptions ,
100
100
@ Nullable VideoSelectionOptions videoOptions ,
101
101
@ NonNull Messages .Result <List <String >> result ) {
@@ -107,10 +107,10 @@ private PendingCallState(
107
107
108
108
@ VisibleForTesting final String fileProviderName ;
109
109
110
- private final Activity activity ;
111
- @ VisibleForTesting final File externalFilesDirectory ;
112
- private final ImageResizer imageResizer ;
113
- private final ImagePickerCache cache ;
110
+ private final @ NonNull Activity activity ;
111
+ @ VisibleForTesting final @ NonNull File externalFilesDirectory ;
112
+ private final @ NonNull ImageResizer imageResizer ;
113
+ private final @ NonNull ImagePickerCache cache ;
114
114
private final PermissionManager permissionManager ;
115
115
private final FileUriResolver fileUriResolver ;
116
116
private final FileUtils fileUtils ;
@@ -140,10 +140,10 @@ interface OnPathReadyListener {
140
140
private final Object pendingCallStateLock = new Object ();
141
141
142
142
public ImagePickerDelegate (
143
- final Activity activity ,
144
- final File externalFilesDirectory ,
145
- final ImageResizer imageResizer ,
146
- final ImagePickerCache cache ) {
143
+ final @ NonNull Activity activity ,
144
+ final @ NonNull File externalFilesDirectory ,
145
+ final @ NonNull ImageResizer imageResizer ,
146
+ final @ NonNull ImagePickerCache cache ) {
147
147
this (
148
148
activity ,
149
149
externalFilesDirectory ,
@@ -181,12 +181,7 @@ public void getFullImagePath(final Uri imageUri, final OnPathReadyListener liste
181
181
activity ,
182
182
new String [] {(imageUri != null ) ? imageUri .getPath () : "" },
183
183
null ,
184
- new MediaScannerConnection .OnScanCompletedListener () {
185
- @ Override
186
- public void onScanCompleted (String path , Uri uri ) {
187
- listener .onPathReady (path );
188
- }
189
- });
184
+ (path , uri ) -> listener .onPathReady (path ));
190
185
}
191
186
},
192
187
new FileUtils (),
@@ -199,13 +194,13 @@ public void onScanCompleted(String path, Uri uri) {
199
194
*/
200
195
@ VisibleForTesting
201
196
ImagePickerDelegate (
202
- final Activity activity ,
203
- final File externalFilesDirectory ,
204
- final ImageResizer imageResizer ,
197
+ final @ NonNull Activity activity ,
198
+ final @ NonNull File externalFilesDirectory ,
199
+ final @ NonNull ImageResizer imageResizer ,
205
200
final @ Nullable ImageSelectionOptions pendingImageOptions ,
206
201
final @ Nullable VideoSelectionOptions pendingVideoOptions ,
207
202
final @ Nullable Messages .Result <List <String >> result ,
208
- final ImagePickerCache cache ,
203
+ final @ NonNull ImagePickerCache cache ,
209
204
final PermissionManager permissionManager ,
210
205
final FileUriResolver fileUriResolver ,
211
206
final FileUtils fileUtils ,
@@ -290,7 +285,9 @@ Messages.CacheRetrievalResult retrieveLostImage() {
290
285
}
291
286
292
287
public void chooseVideoFromGallery (
293
- VideoSelectionOptions options , boolean usePhotoPicker , Messages .Result <List <String >> result ) {
288
+ @ NonNull VideoSelectionOptions options ,
289
+ boolean usePhotoPicker ,
290
+ @ NonNull Messages .Result <List <String >> result ) {
294
291
if (!setPendingOptionsAndResult (null , options , result )) {
295
292
finishWithAlreadyActiveError (result );
296
293
return ;
@@ -318,7 +315,7 @@ private void launchPickVideoFromGalleryIntent(Boolean useAndroidPhotoPicker) {
318
315
}
319
316
320
317
public void takeVideoWithCamera (
321
- VideoSelectionOptions options , Messages .Result <List <String >> result ) {
318
+ @ NonNull VideoSelectionOptions options , @ NonNull Messages .Result <List <String >> result ) {
322
319
if (!setPendingOptionsAndResult (null , options , result )) {
323
320
finishWithAlreadyActiveError (result );
324
321
return ;
@@ -376,7 +373,7 @@ private void launchTakeVideoWithCameraIntent() {
376
373
public void chooseImageFromGallery (
377
374
@ NonNull ImageSelectionOptions options ,
378
375
boolean usePhotoPicker ,
379
- Messages .Result <List <String >> result ) {
376
+ @ NonNull Messages .Result <List <String >> result ) {
380
377
if (!setPendingOptionsAndResult (options , null , result )) {
381
378
finishWithAlreadyActiveError (result );
382
379
return ;
@@ -388,7 +385,7 @@ public void chooseImageFromGallery(
388
385
public void chooseMultiImageFromGallery (
389
386
@ NonNull ImageSelectionOptions options ,
390
387
boolean usePhotoPicker ,
391
- Messages .Result <List <String >> result ) {
388
+ @ NonNull Messages .Result <List <String >> result ) {
392
389
if (!setPendingOptionsAndResult (options , null , result )) {
393
390
finishWithAlreadyActiveError (result );
394
391
return ;
@@ -436,7 +433,7 @@ private void launchMultiPickImageFromGalleryIntent(Boolean useAndroidPhotoPicker
436
433
}
437
434
438
435
public void takeImageWithCamera (
439
- @ NonNull ImageSelectionOptions options , Messages .Result <List <String >> result ) {
436
+ @ NonNull ImageSelectionOptions options , @ NonNull Messages .Result <List <String >> result ) {
440
437
if (!setPendingOptionsAndResult (options , null , result )) {
441
438
finishWithAlreadyActiveError (result );
442
439
return ;
@@ -556,7 +553,8 @@ public boolean onRequestPermissionsResult(
556
553
}
557
554
558
555
@ Override
559
- public boolean onActivityResult (final int requestCode , final int resultCode , final Intent data ) {
556
+ public boolean onActivityResult (
557
+ final int requestCode , final int resultCode , final @ Nullable Intent data ) {
560
558
Runnable handlerRunnable ;
561
559
562
560
switch (requestCode ) {
@@ -605,7 +603,7 @@ private void handleChooseMultiImageResult(int resultCode, Intent intent) {
605
603
} else {
606
604
paths .add (fileUtils .getPathFromUri (activity , intent .getData ()));
607
605
}
608
- handleMultiImageResult (paths , false );
606
+ handleMultiImageResult (paths );
609
607
return ;
610
608
}
611
609
@@ -632,12 +630,7 @@ private void handleCaptureImageResult(int resultCode) {
632
630
localPendingCameraMediaUri != null
633
631
? localPendingCameraMediaUri
634
632
: Uri .parse (cache .retrievePendingCameraMediaUriPath ()),
635
- new OnPathReadyListener () {
636
- @ Override
637
- public void onPathReady (String path ) {
638
- handleImageResult (path , true );
639
- }
640
- });
633
+ path -> handleImageResult (path , true ));
641
634
return ;
642
635
}
643
636
@@ -652,21 +645,15 @@ private void handleCaptureVideoResult(int resultCode) {
652
645
localPendingCameraMediaUrl != null
653
646
? localPendingCameraMediaUrl
654
647
: Uri .parse (cache .retrievePendingCameraMediaUriPath ()),
655
- new OnPathReadyListener () {
656
- @ Override
657
- public void onPathReady (String path ) {
658
- handleVideoResult (path );
659
- }
660
- });
648
+ this ::handleVideoResult );
661
649
return ;
662
650
}
663
651
664
652
// User cancelled taking a picture.
665
653
finishWithSuccess (null );
666
654
}
667
655
668
- private void handleMultiImageResult (
669
- ArrayList <String > paths , boolean shouldDeleteOriginalIfScaled ) {
656
+ private void handleMultiImageResult (ArrayList <String > paths ) {
670
657
ImageSelectionOptions localImageOptions = null ;
671
658
synchronized (pendingCallStateLock ) {
672
659
if (pendingCallState != null ) {
@@ -678,13 +665,6 @@ private void handleMultiImageResult(
678
665
ArrayList <String > finalPath = new ArrayList <>();
679
666
for (int i = 0 ; i < paths .size (); i ++) {
680
667
String finalImagePath = getResizedImagePath (paths .get (i ), localImageOptions );
681
-
682
- //delete original file if scaled
683
- if (finalImagePath != null
684
- && !finalImagePath .equals (paths .get (i ))
685
- && shouldDeleteOriginalIfScaled ) {
686
- new File (paths .get (i )).delete ();
687
- }
688
668
finalPath .add (i , finalImagePath );
689
669
}
690
670
finishWithListSuccess (finalPath );
@@ -693,7 +673,7 @@ private void handleMultiImageResult(
693
673
}
694
674
}
695
675
696
- private void handleImageResult (String path , boolean shouldDeleteOriginalIfScaled ) {
676
+ void handleImageResult (String path , boolean shouldDeleteOriginalIfScaled ) {
697
677
ImageSelectionOptions localImageOptions = null ;
698
678
synchronized (pendingCallStateLock ) {
699
679
if (pendingCallState != null ) {
@@ -721,7 +701,7 @@ private String getResizedImagePath(String path, @NonNull ImageSelectionOptions o
721
701
outputOptions .getQuality ().intValue ());
722
702
}
723
703
724
- private void handleVideoResult (String path ) {
704
+ void handleVideoResult (String path ) {
725
705
finishWithSuccess (path );
726
706
}
727
707
0 commit comments