Skip to content

Commit 8c172c3

Browse files
committed
feat(message-list): wired the some more options
1 parent 762afad commit 8c172c3

1 file changed

Lines changed: 19 additions & 4 deletions

File tree

legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/item/MessageItemContent.kt

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
package com.fsck.k9.ui.messagelist.item
22

33
import androidx.compose.runtime.Composable
4+
import androidx.compose.runtime.remember
45
import com.fsck.k9.ui.messagelist.MessageListAppearance
56
import com.fsck.k9.ui.messagelist.MessageListItem
6-
import kotlin.time.Clock
77
import kotlin.time.ExperimentalTime
8+
import kotlin.time.Instant
89
import kotlinx.datetime.TimeZone
910
import kotlinx.datetime.toLocalDateTime
1011
import net.thunderbird.core.ui.compose.designsystem.organism.message.ActiveMessageItem
@@ -24,12 +25,17 @@ internal fun MessageItemContent(
2425
onFavouriteClick: (Boolean) -> Unit,
2526
appearance: MessageListAppearance,
2627
) {
28+
val receivedAt = remember(item.messageDate) {
29+
Instant.fromEpochMilliseconds(item.messageDate)
30+
.toLocalDateTime(TimeZone.currentSystemDefault())
31+
}
32+
2733
when {
2834
isActive -> ActiveMessageItem(
2935
sender = "${item.displayName}",
3036
subject = item.subject ?: "n/a",
3137
preview = item.previewText,
32-
receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
38+
receivedAt = receivedAt,
3339
avatar = {},
3440
onClick = onClick,
3541
onLongClick = onLongClick,
@@ -38,12 +44,15 @@ internal fun MessageItemContent(
3844
favourite = item.isStarred,
3945
selected = isSelected,
4046
maxPreviewLines = appearance.previewLines,
47+
threadCount = item.threadCount,
48+
hasAttachments = item.hasAttachments,
49+
swapSenderWithSubject = !appearance.senderAboveSubject,
4150
)
4251
item.isRead -> ReadMessageItem(
4352
sender = "${item.displayName}",
4453
subject = item.subject ?: "n/a",
4554
preview = item.previewText,
46-
receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
55+
receivedAt = receivedAt,
4756
avatar = {},
4857
onClick = onClick,
4958
onLongClick = onLongClick,
@@ -52,12 +61,15 @@ internal fun MessageItemContent(
5261
favourite = item.isStarred,
5362
selected = isSelected,
5463
maxPreviewLines = appearance.previewLines,
64+
threadCount = item.threadCount,
65+
hasAttachments = item.hasAttachments,
66+
swapSenderWithSubject = !appearance.senderAboveSubject,
5567
)
5668
else -> UnreadMessageItem(
5769
sender = "${item.displayName}",
5870
subject = item.subject ?: "n/a",
5971
preview = item.previewText,
60-
receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
72+
receivedAt = receivedAt,
6173
avatar = {},
6274
onClick = onClick,
6375
onLongClick = onLongClick,
@@ -66,6 +78,9 @@ internal fun MessageItemContent(
6678
favourite = item.isStarred,
6779
selected = isSelected,
6880
maxPreviewLines = appearance.previewLines,
81+
threadCount = item.threadCount,
82+
hasAttachments = item.hasAttachments,
83+
swapSenderWithSubject = !appearance.senderAboveSubject,
6984
)
7085
}
7186
}

0 commit comments

Comments
 (0)