BayernMessenger/app/src/main/java/im/vector/riotredesign/features/home/room/detail/TimelineEventController.kt

29 lines
879 B
Kotlin
Raw Normal View History

package im.vector.riotredesign.features.home.room.detail
2018-10-19 13:30:40 +00:00
import com.airbnb.epoxy.EpoxyAsyncUtil
import com.airbnb.epoxy.EpoxyModel
import com.airbnb.epoxy.paging.PagedListEpoxyController
import im.vector.matrix.android.api.session.events.model.Event
import im.vector.riotredesign.features.home.LoadingItemModel_
2018-10-19 13:30:40 +00:00
class TimelineEventController : PagedListEpoxyController<Event>(
diffingHandler = EpoxyAsyncUtil.getAsyncBackgroundHandler()
2018-10-19 13:30:40 +00:00
) {
override fun buildItemModel(currentPosition: Int, item: Event?): EpoxyModel<*> {
return if (item == null) {
LoadingItemModel_().id(-currentPosition)
} else {
TimelineEventItem(item.toString()).id(item.eventId)
2018-10-19 13:30:40 +00:00
}
}
init {
isDebugLoggingEnabled = true
}
override fun onExceptionSwallowed(exception: RuntimeException) {
throw exception
}
}