mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-16 20:10:04 +03:00
DRY again
This commit is contained in:
parent
bfcd4b8250
commit
45e534bbf5
3 changed files with 9 additions and 12 deletions
|
@ -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<Type>(
|
||||
protected val attachments: List<Type>,
|
||||
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
|
||||
|
|
|
@ -26,15 +26,13 @@ import org.matrix.android.sdk.api.session.room.timeline.TimelineEvent
|
|||
import java.io.File
|
||||
|
||||
class DataAttachmentRoomProvider(
|
||||
private val attachments: List<AttachmentData>,
|
||||
attachments: List<AttachmentData>,
|
||||
private val room: Room?,
|
||||
imageContentRenderer: ImageContentRenderer,
|
||||
dateFormatter: VectorDateFormatter,
|
||||
fileService: FileService,
|
||||
stringProvider: StringProvider
|
||||
) : BaseAttachmentProvider(imageContentRenderer, fileService, dateFormatter, stringProvider) {
|
||||
|
||||
override fun getItemCount(): Int = attachments.size
|
||||
) : BaseAttachmentProvider<AttachmentData>(attachments, imageContentRenderer, fileService, dateFormatter, stringProvider) {
|
||||
|
||||
override fun getAttachmentInfoAt(position: Int): AttachmentInfo {
|
||||
return attachments[position].let {
|
||||
|
|
|
@ -32,16 +32,12 @@ import org.matrix.android.sdk.internal.crypto.attachments.toElementToDecrypt
|
|||
import java.io.File
|
||||
|
||||
class RoomEventsAttachmentProvider(
|
||||
private val attachments: List<TimelineEvent>,
|
||||
attachments: List<TimelineEvent>,
|
||||
imageContentRenderer: ImageContentRenderer,
|
||||
dateFormatter: VectorDateFormatter,
|
||||
fileService: FileService,
|
||||
stringProvider: StringProvider
|
||||
) : BaseAttachmentProvider(imageContentRenderer, fileService, dateFormatter, stringProvider) {
|
||||
|
||||
override fun getItemCount(): Int {
|
||||
return attachments.size
|
||||
}
|
||||
) : BaseAttachmentProvider<TimelineEvent>(attachments, imageContentRenderer, fileService, dateFormatter, stringProvider) {
|
||||
|
||||
override fun getAttachmentInfoAt(position: Int): AttachmentInfo {
|
||||
return attachments[position].let {
|
||||
|
|
Loading…
Add table
Reference in a new issue