This commit is contained in:
Horis
2024-07-27 09:04:48 +08:00
parent c7fdefbb21
commit 25fef4cfc3

View File

@@ -114,6 +114,7 @@ abstract class RecyclerAdapter<ITEM, VB : ViewBinding>(protected val context: Co
) {
kotlin.runCatching {
val oldItems = this.items.toList()
val itemsSize = items?.size ?: 0
val callback = object : DiffUtil.Callback() {
override fun getOldListSize(): Int {
return itemCount
@@ -153,9 +154,9 @@ abstract class RecyclerAdapter<ITEM, VB : ViewBinding>(protected val context: Co
diffJob?.cancel()
diffJob = Coroutine.async {
val diffResult = if (skipDiff) withTimeoutOrNullAsync(500L) {
DiffUtil.calculateDiff(callback)
DiffUtil.calculateDiff(callback, itemsSize < 2000)
} else {
DiffUtil.calculateDiff(callback)
DiffUtil.calculateDiff(callback, itemsSize < 2000)
}
ensureActive()
handler.post {