mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-06 14:03:45 +01:00
Fix sorting rooms when filtering out events from overview
Follow-up to b1d96ebba9e82721de0e393c58f352684667ae46 Change-Id: I8eeb052b9c883100470f8a124460f78dc643bbcc
This commit is contained in:
parent
3b23ed9830
commit
4d3229a321
@ -16,18 +16,19 @@
|
||||
|
||||
package im.vector.app.features.home.room.list
|
||||
|
||||
import im.vector.app.features.home.room.ScSdkPreferences
|
||||
import org.matrix.android.sdk.api.session.room.model.RoomSummary
|
||||
import javax.inject.Inject
|
||||
|
||||
class ChronologicalRoomComparator @Inject constructor() : Comparator<RoomSummary> {
|
||||
class ChronologicalRoomComparator @Inject constructor(val scSdkPreferences: ScSdkPreferences) : Comparator<RoomSummary> {
|
||||
|
||||
override fun compare(leftRoomSummary: RoomSummary?, rightRoomSummary: RoomSummary?): Int {
|
||||
return when {
|
||||
rightRoomSummary?.latestPreviewableEvent?.root == null -> -1
|
||||
leftRoomSummary?.latestPreviewableEvent?.root == null -> 1
|
||||
rightRoomSummary?.scLatestPreviewableEvent(scSdkPreferences)?.root == null -> -1
|
||||
leftRoomSummary?.scLatestPreviewableEvent(scSdkPreferences)?.root == null -> 1
|
||||
else -> {
|
||||
val rightTimestamp = rightRoomSummary.latestPreviewableEvent?.root?.originServerTs ?: 0
|
||||
val leftTimestamp = leftRoomSummary.latestPreviewableEvent?.root?.originServerTs ?: 0
|
||||
val rightTimestamp = rightRoomSummary.scLatestPreviewableEvent(scSdkPreferences)?.root?.originServerTs ?: 0
|
||||
val leftTimestamp = leftRoomSummary.scLatestPreviewableEvent(scSdkPreferences)?.root?.originServerTs ?: 0
|
||||
|
||||
val deltaTimestamp = rightTimestamp - leftTimestamp
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user