Restore fun interface for a sweeter code.
This commit is contained in:
parent
70c643be5e
commit
0db54df877
10 changed files with 31 additions and 53 deletions
|
|
@ -14,7 +14,6 @@ import io.element.android.libraries.matrix.api.core.UserId
|
|||
import io.element.android.libraries.matrix.api.timeline.item.TimelineItemDebugInfo
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.EventReaction
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.EventTimelineItem
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.LazyTimelineItemProvider
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.LocalEventSendState
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.MessageShield
|
||||
import io.element.android.libraries.matrix.api.timeline.item.event.ProfileTimelineDetails
|
||||
|
|
@ -32,7 +31,6 @@ import uniffi.matrix_sdk_common.ShieldStateCode
|
|||
import org.matrix.rustcomponents.sdk.EventSendState as RustEventSendState
|
||||
import org.matrix.rustcomponents.sdk.EventTimelineItem as RustEventTimelineItem
|
||||
import org.matrix.rustcomponents.sdk.EventTimelineItemDebugInfo as RustEventTimelineItemDebugInfo
|
||||
import org.matrix.rustcomponents.sdk.LazyTimelineItemProvider as RustLazyTimelineItemProvider
|
||||
import org.matrix.rustcomponents.sdk.ProfileDetails as RustProfileDetails
|
||||
import org.matrix.rustcomponents.sdk.Receipt as RustReceipt
|
||||
import uniffi.matrix_sdk_ui.EventItemOrigin as RustEventItemOrigin
|
||||
|
|
@ -56,7 +54,8 @@ class EventTimelineItemMapper(
|
|||
timestamp = timestamp.toLong(),
|
||||
content = contentMapper.map(content),
|
||||
origin = origin?.map(),
|
||||
lazyTimelineItemProvider = LazyTimelineItemProviderWrapper(lazyProvider)
|
||||
timelineItemDebugInfoProvider = { lazyProvider.debugInfo().map() },
|
||||
messageShieldProvider = { strict -> lazyProvider.getShields(strict)?.map() },
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
@ -164,16 +163,6 @@ private fun ShieldState?.map(): MessageShield? {
|
|||
}
|
||||
}
|
||||
|
||||
class LazyTimelineItemProviderWrapper(private val provider: RustLazyTimelineItemProvider) : LazyTimelineItemProvider {
|
||||
override fun getTimelineItemDebugInfo(): TimelineItemDebugInfo {
|
||||
return provider.debugInfo().map()
|
||||
}
|
||||
|
||||
override fun getShield(strict: Boolean): MessageShield? {
|
||||
return provider.getShields(strict)?.map()
|
||||
}
|
||||
}
|
||||
|
||||
private fun EventOrTransactionId.eventId(): EventId? {
|
||||
return (this as? EventOrTransactionId.EventId)?.let { EventId(it.eventId) }
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue