From d1822fd33befe7691f5ee2772dadfb591d10e9fa Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 10 Oct 2025 10:02:47 +0200 Subject: [PATCH] Only timestamp is usefull, no need to build a Date. --- .../timeline/factories/event/TimelineItemEventFactory.kt | 3 +-- .../impl/timeline/model/AggregatedReactionProvider.kt | 5 +++-- .../impl/timeline/model/AggregatedReactionSender.kt | 6 +----- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt index 6043cb57ff..93a5e686d9 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt @@ -146,10 +146,9 @@ class TimelineItemEventFactory( senders = reaction.senders .sortedByDescending { it.timestamp } .map { - val date = Date(it.timestamp) AggregatedReactionSender( senderId = it.senderId, - timestamp = date, + timestamp = it.timestamp, sentTime = dateFormatter.format( it.timestamp, DateFormatterMode.TimeOrDate, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt index b7400c7616..71d5035910 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionProvider.kt @@ -33,13 +33,14 @@ fun anAggregatedReaction( val timeFormatter = DateFormat.getTimeInstance(DateFormat.SHORT, java.util.Locale.US).apply { timeZone = TimeZone.getTimeZone("UTC") } - val date = Date(1_689_061_264L) + val timestamp = 1_689_061_264L + val date = Date(timestamp) val senders = buildList { repeat(count) { index -> add( AggregatedReactionSender( senderId = if (isHighlighted && index == 0) userId else UserId("@user$index:server.org"), - timestamp = date, + timestamp = timestamp, sentTime = timeFormatter.format(date), ) ) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionSender.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionSender.kt index cce557d0ec..ab8e9fe1a2 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionSender.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/AggregatedReactionSender.kt @@ -7,16 +7,12 @@ package io.element.android.features.messages.impl.timeline.model -import androidx.compose.runtime.Immutable import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.user.MatrixUser -import java.util.Date -// Need to be marked as @Immutable for Date -@Immutable data class AggregatedReactionSender( val senderId: UserId, - val timestamp: Date, + val timestamp: Long, val sentTime: String, val user: MatrixUser? = null )