From 82cb5db14483808c9fe9cb4a2882d826b39357a6 Mon Sep 17 00:00:00 2001 From: Kota-Jagadeesh Date: Tue, 14 Oct 2025 18:05:03 +0530 Subject: [PATCH] Added 20-img limit --- .../nrw/commons/customselector/ui/adapter/ImageAdapter.kt | 6 +++--- .../customselector/ui/selector/CustomSelectorActivity.kt | 4 ++-- .../java/fr/free/nrw/commons/upload/ThumbnailsAdapter.kt | 2 +- .../main/java/fr/free/nrw/commons/upload/UploadActivity.kt | 4 ++-- app/src/main/res/values/strings.xml | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/adapter/ImageAdapter.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/adapter/ImageAdapter.kt index 8de605766..f96bcde10 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/adapter/ImageAdapter.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/adapter/ImageAdapter.kt @@ -190,8 +190,8 @@ class ImageAdapter( ) holder.itemView.setOnClickListener { if (!holder.isItemUploaded() && !holder.isItemNotForUpload()) { - if (selectedImages.size >= 5 && !isSelected) { //enforce the 5-image limit - Toast.makeText(context, "Cannot select more than 5 images", Toast.LENGTH_SHORT).show() + if (selectedImages.size >= 20 && !isSelected) { //enforce the 20-image limit + Toast.makeText(context, "Cannot select more than 20 images", Toast.LENGTH_SHORT).show() return@setOnClickListener } if (isSelected) { @@ -400,7 +400,7 @@ class ImageAdapter( * Set new selected images */ fun setSelectedImages(newSelectedImages: ArrayList) { - selectedImages = ArrayList(newSelectedImages.take(5)) // enforce 5-image limit + selectedImages = ArrayList(newSelectedImages.take(20)) // enforce 20-image limit imageSelectListener.onSelectedImagesChanged(selectedImages, 0) } diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt index 9fbba896d..cc737063c 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt @@ -107,7 +107,7 @@ class CustomSelectorActivity : /** * Maximum number of images that can be selected. */ - private var uploadLimit: Int = 5 // Changed to 5 asper the issue #3101 + private var uploadLimit: Int = 20 // changed to 20 asper the issue #3101 /** * Flag that is marked true when the amount @@ -651,7 +651,7 @@ class CustomSelectorActivity : return } if (selectedImages.size > uploadLimit) { - displayUploadLimitWarning() // shows the warning dialog if >5 images + displayUploadLimitWarning() // shows the warning dialog if >20 images return } scope.launch(ioDispatcher) { diff --git a/app/src/main/java/fr/free/nrw/commons/upload/ThumbnailsAdapter.kt b/app/src/main/java/fr/free/nrw/commons/upload/ThumbnailsAdapter.kt index 2cc8603be..b5156b722 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/ThumbnailsAdapter.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/ThumbnailsAdapter.kt @@ -23,7 +23,7 @@ internal class ThumbnailsAdapter(private val callback: Callback) : var onThumbnailDeletedListener: OnThumbnailDeletedListener? = null var uploadableFiles: List = emptyList() set(value) { - field = value.take(5) //enforce 5-image limit + field = value.take(20) //enforce 20-image limit notifyDataSetChanged() } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt b/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt index 4b2c72057..0984d646e 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt @@ -735,8 +735,8 @@ class UploadActivity : BaseActivity(), UploadContract.View, UploadBaseFragment.C intent.getParcelableArrayListExtra(EXTRA_FILES) } - // Convert to mutable list,takes up to 5 files, or return empty list if null - files?.toMutableList()?.take(5)?.toMutableList() ?: run { //enforce 5-image limit + // Convert to mutable list,takes up to 20 files, or return empty list if null + files?.toMutableList()?.take(20)?.toMutableList() ?: run { //enforce 20-image limit Timber.w("Files array was null") mutableListOf() } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 629b0dd79..c47e74a5a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -888,5 +888,5 @@ Upload your first media by tapping on the add button. Created by %1$s and uploaded by %2$s Nominated for Deletion - You can only select up to 5 images. + You can only select up to 20 images.