Loading legacy/ui/legacy/src/debug/kotlin/com/fsck/k9/ui/messagelist/item/MessageItemContentPreview.kt +16 −0 Original line number Diff line number Diff line Loading @@ -3,9 +3,12 @@ package com.fsck.k9.ui.messagelist.item import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.PreviewLightDark import app.k9mail.core.ui.compose.designsystem.PreviewWithThemesLightDark import com.fsck.k9.FontSizes import com.fsck.k9.UiDensity import com.fsck.k9.mail.AuthType import com.fsck.k9.mail.ConnectionSecurity import com.fsck.k9.mail.ServerSettings import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import net.thunderbird.core.android.account.Identity import net.thunderbird.core.android.account.LegacyAccount Loading @@ -26,6 +29,7 @@ internal fun MessageItemContentPreview() { onLongClick = {}, onAvatarClick = {}, onFavouriteClick = {}, appearance = fakeMessageListAppearance, ) } } Loading Loading @@ -81,3 +85,15 @@ private val fakeMessageListItem = MessageListItem( databaseId = 1L, threadRoot = 1L, ) private val fakeMessageListAppearance = MessageListAppearance( fontSizes = FontSizes(), previewLines = 2, stars = true, senderAboveSubject = false, showContactPicture = true, showingThreadedList = false, backGroundAsReadIndicator = false, showAccountIndicator = true, density = UiDensity.Default, ) legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListAdapter.kt +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ class MessageListAdapter internal constructor( onLongClick = { listItemListener.onToggleMessageSelection(it) }, onFavouriteClick = { listItemListener.onToggleMessageFlag(it) }, onAvatarClick = { listItemListener.onToggleMessageSelection(it) }, appearance = appearance, ) override fun onBindViewHolder(holder: MessageListViewHolder, position: Int) { Loading legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/item/ComposableMessageViewHolder.kt +5 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package com.fsck.k9.ui.messagelist.item import android.content.Context import androidx.compose.ui.platform.ComposeView import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import net.thunderbird.core.ui.theme.api.FeatureThemeProvider Loading @@ -15,6 +16,7 @@ class ComposableMessageViewHolder( private val onLongClick: (MessageListItem) -> Unit, private val onAvatarClick: (MessageListItem) -> Unit, private val onFavouriteClick: (MessageListItem) -> Unit, private val appearance: MessageListAppearance, ) : MessageListViewHolder(composeView) { var uniqueId: Long = -1L Loading @@ -32,6 +34,7 @@ class ComposableMessageViewHolder( onLongClick = { onLongClick(item) }, onAvatarClick = { onAvatarClick(item) }, onFavouriteClick = { onFavouriteClick(item) }, appearance = appearance, ) } } Loading @@ -46,6 +49,7 @@ class ComposableMessageViewHolder( onLongClick: (MessageListItem) -> Unit, onFavouriteClick: (MessageListItem) -> Unit, onAvatarClick: (MessageListItem) -> Unit, appearance: MessageListAppearance, ): ComposableMessageViewHolder { val composeView = ComposeView(context) Loading @@ -56,6 +60,7 @@ class ComposableMessageViewHolder( onLongClick = onLongClick, onAvatarClick = onAvatarClick, onFavouriteClick = onFavouriteClick, appearance = appearance, ) composeView.tag = holder Loading legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/item/MessageItemContent.kt +6 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messagelist.item import androidx.compose.runtime.Composable import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import kotlin.time.Clock import kotlin.time.ExperimentalTime Loading @@ -10,6 +11,7 @@ import net.thunderbird.core.ui.compose.designsystem.organism.message.ActiveMessa import net.thunderbird.core.ui.compose.designsystem.organism.message.ReadMessageItem import net.thunderbird.core.ui.compose.designsystem.organism.message.UnreadMessageItem @Suppress("LongParameterList") @OptIn(ExperimentalTime::class) @Composable internal fun MessageItemContent( Loading @@ -20,6 +22,7 @@ internal fun MessageItemContent( onLongClick: () -> Unit, onAvatarClick: () -> Unit, onFavouriteClick: (Boolean) -> Unit, appearance: MessageListAppearance, ) { when { isActive -> ActiveMessageItem( Loading @@ -34,6 +37,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) item.isRead -> ReadMessageItem( sender = "${item.displayName}", Loading @@ -47,6 +51,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) else -> UnreadMessageItem( sender = "${item.displayName}", Loading @@ -60,6 +65,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) } } Loading
legacy/ui/legacy/src/debug/kotlin/com/fsck/k9/ui/messagelist/item/MessageItemContentPreview.kt +16 −0 Original line number Diff line number Diff line Loading @@ -3,9 +3,12 @@ package com.fsck.k9.ui.messagelist.item import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.PreviewLightDark import app.k9mail.core.ui.compose.designsystem.PreviewWithThemesLightDark import com.fsck.k9.FontSizes import com.fsck.k9.UiDensity import com.fsck.k9.mail.AuthType import com.fsck.k9.mail.ConnectionSecurity import com.fsck.k9.mail.ServerSettings import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import net.thunderbird.core.android.account.Identity import net.thunderbird.core.android.account.LegacyAccount Loading @@ -26,6 +29,7 @@ internal fun MessageItemContentPreview() { onLongClick = {}, onAvatarClick = {}, onFavouriteClick = {}, appearance = fakeMessageListAppearance, ) } } Loading Loading @@ -81,3 +85,15 @@ private val fakeMessageListItem = MessageListItem( databaseId = 1L, threadRoot = 1L, ) private val fakeMessageListAppearance = MessageListAppearance( fontSizes = FontSizes(), previewLines = 2, stars = true, senderAboveSubject = false, showContactPicture = true, showingThreadedList = false, backGroundAsReadIndicator = false, showAccountIndicator = true, density = UiDensity.Default, )
legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListAdapter.kt +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ class MessageListAdapter internal constructor( onLongClick = { listItemListener.onToggleMessageSelection(it) }, onFavouriteClick = { listItemListener.onToggleMessageFlag(it) }, onAvatarClick = { listItemListener.onToggleMessageSelection(it) }, appearance = appearance, ) override fun onBindViewHolder(holder: MessageListViewHolder, position: Int) { Loading
legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/item/ComposableMessageViewHolder.kt +5 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package com.fsck.k9.ui.messagelist.item import android.content.Context import androidx.compose.ui.platform.ComposeView import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import net.thunderbird.core.ui.theme.api.FeatureThemeProvider Loading @@ -15,6 +16,7 @@ class ComposableMessageViewHolder( private val onLongClick: (MessageListItem) -> Unit, private val onAvatarClick: (MessageListItem) -> Unit, private val onFavouriteClick: (MessageListItem) -> Unit, private val appearance: MessageListAppearance, ) : MessageListViewHolder(composeView) { var uniqueId: Long = -1L Loading @@ -32,6 +34,7 @@ class ComposableMessageViewHolder( onLongClick = { onLongClick(item) }, onAvatarClick = { onAvatarClick(item) }, onFavouriteClick = { onFavouriteClick(item) }, appearance = appearance, ) } } Loading @@ -46,6 +49,7 @@ class ComposableMessageViewHolder( onLongClick: (MessageListItem) -> Unit, onFavouriteClick: (MessageListItem) -> Unit, onAvatarClick: (MessageListItem) -> Unit, appearance: MessageListAppearance, ): ComposableMessageViewHolder { val composeView = ComposeView(context) Loading @@ -56,6 +60,7 @@ class ComposableMessageViewHolder( onLongClick = onLongClick, onAvatarClick = onAvatarClick, onFavouriteClick = onFavouriteClick, appearance = appearance, ) composeView.tag = holder Loading
legacy/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/item/MessageItemContent.kt +6 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messagelist.item import androidx.compose.runtime.Composable import com.fsck.k9.ui.messagelist.MessageListAppearance import com.fsck.k9.ui.messagelist.MessageListItem import kotlin.time.Clock import kotlin.time.ExperimentalTime Loading @@ -10,6 +11,7 @@ import net.thunderbird.core.ui.compose.designsystem.organism.message.ActiveMessa import net.thunderbird.core.ui.compose.designsystem.organism.message.ReadMessageItem import net.thunderbird.core.ui.compose.designsystem.organism.message.UnreadMessageItem @Suppress("LongParameterList") @OptIn(ExperimentalTime::class) @Composable internal fun MessageItemContent( Loading @@ -20,6 +22,7 @@ internal fun MessageItemContent( onLongClick: () -> Unit, onAvatarClick: () -> Unit, onFavouriteClick: (Boolean) -> Unit, appearance: MessageListAppearance, ) { when { isActive -> ActiveMessageItem( Loading @@ -34,6 +37,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) item.isRead -> ReadMessageItem( sender = "${item.displayName}", Loading @@ -47,6 +51,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) else -> UnreadMessageItem( sender = "${item.displayName}", Loading @@ -60,6 +65,7 @@ internal fun MessageItemContent( onFavouriteChange = onFavouriteClick, favourite = item.isStarred, selected = isSelected, maxPreviewLines = appearance.previewLines, ) } }