diff options
Diffstat (limited to 'patches/expo-image-picker+14.7.1.patch')
-rw-r--r-- | patches/expo-image-picker+14.7.1.patch | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/patches/expo-image-picker+14.7.1.patch b/patches/expo-image-picker+14.7.1.patch deleted file mode 100644 index 046eb4f4f..000000000 --- a/patches/expo-image-picker+14.7.1.patch +++ /dev/null @@ -1,112 +0,0 @@ -diff --git a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -index 3f50f8c..ee47fa1 100644 ---- a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -+++ b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -@@ -33,7 +33,9 @@ import kotlin.coroutines.resumeWithException - // TODO(@bbarthec): rename to ExpoImagePicker - private const val moduleName = "ExponentImagePicker" - -+ - class ImagePickerModule : Module() { -+ private var isPickerOpen = false - - override fun definition() = ModuleDefinition { - Name(moduleName) -@@ -129,6 +131,11 @@ class ImagePickerModule : Module() { - options: ImagePickerOptions - ): Any { - return try { -+ if(isPickerOpen) { -+ return ImagePickerResponse(canceled = true) -+ } -+ -+ isPickerOpen = true - var result = launchPicker(pickerLauncher) - if ( - !options.allowsMultipleSelection && -@@ -143,6 +150,8 @@ class ImagePickerModule : Module() { - mediaHandler.readExtras(result.data, options) - } catch (cause: OperationCanceledException) { - return ImagePickerResponse(canceled = true) -+ } finally { -+ isPickerOpen = false - } - } - -diff --git a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -index ff15c91..9763012 100644 ---- a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -+++ b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -@@ -5,12 +5,7 @@ import android.content.ContentResolver - import android.content.Context - import android.content.Intent - import android.net.Uri --import androidx.activity.result.PickVisualMediaRequest --import androidx.activity.result.contract.ActivityResultContracts.PickVisualMedia --import androidx.activity.result.contract.ActivityResultContracts.PickMultipleVisualMedia - import expo.modules.imagepicker.ImagePickerOptions --import expo.modules.imagepicker.MediaTypes --import expo.modules.imagepicker.UNLIMITED_SELECTION - import expo.modules.imagepicker.getAllDataUris - import expo.modules.imagepicker.toMediaType - import expo.modules.kotlin.activityresult.AppContextActivityResultContract -@@ -26,51 +21,26 @@ import java.io.Serializable - * @see [androidx.activity.result.contract.ActivityResultContracts.GetMultipleContents] - */ - internal class ImageLibraryContract( -- private val appContextProvider: AppContextProvider -+ private val appContextProvider: AppContextProvider, - ) : AppContextActivityResultContract<ImageLibraryContractOptions, ImagePickerContractResult> { - private val contentResolver: ContentResolver - get() = appContextProvider.appContext.reactContext?.contentResolver - ?: throw Exceptions.ReactContextLost() - - override fun createIntent(context: Context, input: ImageLibraryContractOptions): Intent { -- val request = PickVisualMediaRequest.Builder() -- .setMediaType( -- when (input.options.mediaTypes) { -- MediaTypes.VIDEOS -> { -- PickVisualMedia.VideoOnly -- } -- -- MediaTypes.IMAGES -> { -- PickVisualMedia.ImageOnly -- } -- -- else -> { -- PickVisualMedia.ImageAndVideo -- } -- } -- ) -- .build() -+ val intent = Intent(Intent.ACTION_GET_CONTENT) -+ .addCategory(Intent.CATEGORY_OPENABLE) -+ .setType("image/*") - - if (input.options.allowsMultipleSelection) { -- val selectionLimit = input.options.selectionLimit -- -- if (selectionLimit == 1) { -- // If multiple selection is allowed but the limit is 1, we should ignore -- // the multiple selection flag and just treat it as a single selection. -- return PickVisualMedia().createIntent(context, request) -+ if(input.options.selectionLimit == 1) { -+ return intent - } - -- if (selectionLimit > 1) { -- return PickMultipleVisualMedia(selectionLimit).createIntent(context, request) -- } -- -- // If the selection limit is 0, it is the same as unlimited selection. -- if (selectionLimit == UNLIMITED_SELECTION) { -- return PickMultipleVisualMedia().createIntent(context, request) -- } -+ intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true) - } - -- return PickVisualMedia().createIntent(context, request) -+ return intent - } - - override fun parseResult(input: ImageLibraryContractOptions, resultCode: Int, intent: Intent?) = |