From 45e534bbf50a1884a0a0cee1f8f7a15934967181 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 10 Nov 2020 15:33:24 +0100 Subject: [PATCH] DRY again --- .../vector/app/features/media/BaseAttachmentProvider.kt | 7 +++++-- .../app/features/media/DataAttachmentRoomProvider.kt | 6 ++---- .../app/features/media/RoomEventsAttachmentProvider.kt | 8 ++------ 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/vector/src/main/java/im/vector/app/features/media/BaseAttachmentProvider.kt b/vector/src/main/java/im/vector/app/features/media/BaseAttachmentProvider.kt index d77f8ad0e2..208d5e28f8 100644 --- a/vector/src/main/java/im/vector/app/features/media/BaseAttachmentProvider.kt +++ b/vector/src/main/java/im/vector/app/features/media/BaseAttachmentProvider.kt @@ -37,7 +37,8 @@ import org.matrix.android.sdk.api.session.file.FileService import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent import java.io.File -abstract class BaseAttachmentProvider( +abstract class BaseAttachmentProvider( + protected val attachments: List, private val imageContentRenderer: ImageContentRenderer, protected val fileService: FileService, private val dateFormatter: VectorDateFormatter, @@ -53,7 +54,9 @@ abstract class BaseAttachmentProvider( var interactionListener: InteractionListener? = null - protected var overlayView: AttachmentOverlayView? = null + private var overlayView: AttachmentOverlayView? = null + + final override fun getItemCount() = attachments.size final override fun overlayViewAtPosition(context: Context, position: Int): View? { if (position == -1) return null diff --git a/vector/src/main/java/im/vector/app/features/media/DataAttachmentRoomProvider.kt b/vector/src/main/java/im/vector/app/features/media/DataAttachmentRoomProvider.kt index 57587b8db2..02b9c034e9 100644 --- a/vector/src/main/java/im/vector/app/features/media/DataAttachmentRoomProvider.kt +++ b/vector/src/main/java/im/vector/app/features/media/DataAttachmentRoomProvider.kt @@ -26,15 +26,13 @@ import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent import java.io.File class DataAttachmentRoomProvider( - private val attachments: List, + attachments: List, private val room: Room?, imageContentRenderer: ImageContentRenderer, dateFormatter: VectorDateFormatter, fileService: FileService, stringProvider: StringProvider -) : BaseAttachmentProvider(imageContentRenderer, fileService, dateFormatter, stringProvider) { - - override fun getItemCount(): Int = attachments.size +) : BaseAttachmentProvider(attachments, imageContentRenderer, fileService, dateFormatter, stringProvider) { override fun getAttachmentInfoAt(position: Int): AttachmentInfo { return attachments[position].let { diff --git a/vector/src/main/java/im/vector/app/features/media/RoomEventsAttachmentProvider.kt b/vector/src/main/java/im/vector/app/features/media/RoomEventsAttachmentProvider.kt index 4ffd416011..da6cc5d570 100644 --- a/vector/src/main/java/im/vector/app/features/media/RoomEventsAttachmentProvider.kt +++ b/vector/src/main/java/im/vector/app/features/media/RoomEventsAttachmentProvider.kt @@ -32,16 +32,12 @@ import org.matrix.android.sdk.internal.crypto.attachments.toElementToDecrypt import java.io.File class RoomEventsAttachmentProvider( - private val attachments: List, + attachments: List, imageContentRenderer: ImageContentRenderer, dateFormatter: VectorDateFormatter, fileService: FileService, stringProvider: StringProvider -) : BaseAttachmentProvider(imageContentRenderer, fileService, dateFormatter, stringProvider) { - - override fun getItemCount(): Int { - return attachments.size - } +) : BaseAttachmentProvider(attachments, imageContentRenderer, fileService, dateFormatter, stringProvider) { override fun getAttachmentInfoAt(position: Int): AttachmentInfo { return attachments[position].let {