diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/model/Folder.kt b/app/src/main/java/fr/free/nrw/commons/customselector/model/Folder.kt index ec08f6f73..4bf295f4c 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/model/Folder.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/model/Folder.kt @@ -39,4 +39,11 @@ data class Folder( return true } + + override fun hashCode(): Int { + var result = bucketId.hashCode() + result = 31 * result + name.hashCode() + result = 31 * result + images.hashCode() + return result + } } diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/model/Image.kt b/app/src/main/java/fr/free/nrw/commons/customselector/model/Image.kt index a2965fb5d..a172f28e2 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/model/Image.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/model/Image.kt @@ -1,6 +1,7 @@ package fr.free.nrw.commons.customselector.model import android.net.Uri +import android.os.Build import android.os.Parcel import android.os.Parcelable @@ -48,7 +49,12 @@ data class Image( this( parcel.readLong(), parcel.readString()!!, - parcel.readParcelable(Uri::class.java.classLoader)!!, + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + parcel.readParcelable(Uri::class.java.classLoader, Uri::class.java)!! + } else { + @Suppress("DEPRECATION") + parcel.readParcelable(Uri::class.java.classLoader)!! + }, parcel.readString()!!, parcel.readLong(), parcel.readString()!!, @@ -121,4 +127,16 @@ data class Image( override fun newArray(size: Int): Array = arrayOfNulls(size) } + + override fun hashCode(): Int { + var result = id.hashCode() + result = 31 * result + bucketId.hashCode() + result = 31 * result + name.hashCode() + result = 31 * result + uri.hashCode() + result = 31 * result + path.hashCode() + result = 31 * result + bucketName.hashCode() + result = 31 * result + sha1.hashCode() + result = 31 * result + date.hashCode() + return result + } }