Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 8c172c33 authored by Wolf-Martell Montwé's avatar Wolf-Martell Montwé
Browse files

feat(message-list): wired the some more options

parent 762afada
Loading
Loading
Loading
Loading
+19 −4
Original line number Diff line number Diff line
package com.fsck.k9.ui.messagelist.item

import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import com.fsck.k9.ui.messagelist.MessageListAppearance
import com.fsck.k9.ui.messagelist.MessageListItem
import kotlin.time.Clock
import kotlin.time.ExperimentalTime
import kotlin.time.Instant
import kotlinx.datetime.TimeZone
import kotlinx.datetime.toLocalDateTime
import net.thunderbird.core.ui.compose.designsystem.organism.message.ActiveMessageItem
@@ -24,12 +25,17 @@ internal fun MessageItemContent(
    onFavouriteClick: (Boolean) -> Unit,
    appearance: MessageListAppearance,
) {
    val receivedAt = remember(item.messageDate) {
        Instant.fromEpochMilliseconds(item.messageDate)
            .toLocalDateTime(TimeZone.currentSystemDefault())
    }

    when {
        isActive -> ActiveMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
            receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
            receivedAt = receivedAt,
            avatar = {},
            onClick = onClick,
            onLongClick = onLongClick,
@@ -38,12 +44,15 @@ internal fun MessageItemContent(
            favourite = item.isStarred,
            selected = isSelected,
            maxPreviewLines = appearance.previewLines,
            threadCount = item.threadCount,
            hasAttachments = item.hasAttachments,
            swapSenderWithSubject = !appearance.senderAboveSubject,
        )
        item.isRead -> ReadMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
            receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
            receivedAt = receivedAt,
            avatar = {},
            onClick = onClick,
            onLongClick = onLongClick,
@@ -52,12 +61,15 @@ internal fun MessageItemContent(
            favourite = item.isStarred,
            selected = isSelected,
            maxPreviewLines = appearance.previewLines,
            threadCount = item.threadCount,
            hasAttachments = item.hasAttachments,
            swapSenderWithSubject = !appearance.senderAboveSubject,
        )
        else -> UnreadMessageItem(
            sender = "${item.displayName}",
            subject = item.subject ?: "n/a",
            preview = item.previewText,
            receivedAt = Clock.System.now().toLocalDateTime(TimeZone.currentSystemDefault()),
            receivedAt = receivedAt,
            avatar = {},
            onClick = onClick,
            onLongClick = onLongClick,
@@ -66,6 +78,9 @@ internal fun MessageItemContent(
            favourite = item.isStarred,
            selected = isSelected,
            maxPreviewLines = appearance.previewLines,
            threadCount = item.threadCount,
            hasAttachments = item.hasAttachments,
            swapSenderWithSubject = !appearance.senderAboveSubject,
        )
    }
}