Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListAdapter.kt +4 −17 Original line number Diff line number Diff line Loading @@ -200,12 +200,6 @@ class MessageListAdapter internal constructor( setHasStableIds(true) } private fun recipientSigil(toMe: Boolean, ccMe: Boolean) = when { toMe -> res.getString(R.string.messagelist_sent_to_me_sigil) + " " ccMe -> res.getString(R.string.messagelist_sent_cc_me_sigil) + " " else -> "" } override fun getItemCount(): Int = messages.size + if (hasFooter) 1 else 0 override fun getItemId(position: Int): Long { Loading Loading @@ -341,16 +335,14 @@ class MessageListAdapter internal constructor( setBackgroundColor(holder.itemView, isSelected, isRead, isActive) updateWithThreadCount(holder, displayThreadCount) val beforePreviewText = if (appearance.senderAboveSubject) subject else displayName val sigil = recipientSigil(toMe, ccMe) val messageStringBuilder = SpannableStringBuilder(sigil) .append(beforePreviewText) val messageStringBuilder = SpannableStringBuilder(beforePreviewText) if (appearance.previewLines > 0) { val preview = getPreview(isMessageEncrypted, previewText) messageStringBuilder.append(" ").append(preview) } holder.preview.setText(messageStringBuilder, TextView.BufferType.SPANNABLE) formatPreviewText(holder.preview, beforePreviewText, sigil, isRead) formatPreviewText(holder.preview, beforePreviewText, isRead) holder.subject.typeface = Typeface.create(holder.subject.typeface, maybeBoldTypeface) if (appearance.senderAboveSubject) { Loading @@ -376,15 +368,10 @@ class MessageListAdapter internal constructor( holder.text.text = footerText } private fun formatPreviewText( preview: TextView, beforePreviewText: CharSequence, sigil: String, messageRead: Boolean ) { private fun formatPreviewText(preview: TextView, beforePreviewText: CharSequence, messageRead: Boolean) { val previewText = preview.text as Spannable val beforePreviewLength = beforePreviewText.length + sigil.length val beforePreviewLength = beforePreviewText.length addBeforePreviewSpan(previewText, beforePreviewLength, messageRead) // Set span (color) for preview message Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListItem.kt +0 −2 Original line number Diff line number Diff line Loading @@ -12,8 +12,6 @@ data class MessageListItem( val internalDate: Long, val displayName: CharSequence, val displayAddress: Address?, val toMe: Boolean, val ccMe: Boolean, val previewText: String, val isMessageEncrypted: Boolean, val isRead: Boolean, Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListItemMapper.kt +0 −4 Original line number Diff line number Diff line Loading @@ -15,8 +15,6 @@ class MessageListItemMapper( override fun map(message: MessageDetailsAccessor): MessageListItem { val fromAddresses = message.fromAddresses val toAddresses = message.toAddresses val toMe = messageHelper.toMe(account, toAddresses) val ccMe = messageHelper.toMe(account, message.ccAddresses) val previewResult = message.preview val isMessageEncrypted = previewResult.previewType == PreviewType.ENCRYPTED val previewText = if (previewResult.isPreviewTextAvailable) previewResult.previewText else "" Loading @@ -37,8 +35,6 @@ class MessageListItemMapper( message.internalDate, displayName, displayAddress, toMe, ccMe, previewText, isMessageEncrypted, message.isRead, Loading app/ui/legacy/src/main/res/values/strings.xml +0 −3 Original line number Diff line number Diff line Loading @@ -933,9 +933,6 @@ Please submit bug reports, contribute new features and ask questions at <string name="dialog_attachment_progress_title">Downloading attachment</string> <string name="messagelist_sent_to_me_sigil">»</string> <string name="messagelist_sent_cc_me_sigil">›</string> <string name="settings_list_backup_category">Backup</string> <string name="settings_list_miscellaneous_category">Miscellaneous</string> Loading app/ui/legacy/src/test/java/com/fsck/k9/ui/messagelist/MessageListAdapterTest.kt +0 −49 Original line number Diff line number Diff line Loading @@ -26,7 +26,6 @@ import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse import org.junit.Assert.assertNull import org.junit.Assert.assertTrue import org.junit.Ignore import org.junit.Test import org.mockito.kotlin.mock import org.robolectric.Robolectric Loading Loading @@ -218,48 +217,6 @@ class MessageListAdapterTest : RobolectricTest() { assertTrue(view.firstLineView.containsNoSubjectIndicator()) } @Test @Ignore("Currently failing. See issue #4152.") fun withSenderAboveSubjectAndMessageToMe_shouldDisplayIndicatorInFirstLine() { val adapter = createAdapter(senderAboveSubject = true) val messageListItem = createMessageListItem(toMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.firstLineView.containsToMeIndicator()) } @Test @Ignore("Currently failing. See issue #4152.") fun withSenderAboveSubjectAndMessageCcMe_shouldDisplayIndicatorInFirstLine() { val adapter = createAdapter(senderAboveSubject = true) val messageListItem = createMessageListItem(ccMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.firstLineView.containsCcMeIndicator()) } @Test fun withoutSenderAboveSubjectAndMessageToMe_shouldDisplayIndicatorInSecondLine() { val adapter = createAdapter(senderAboveSubject = false) val messageListItem = createMessageListItem(toMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.secondLineView.containsToMeIndicator()) } @Test fun withoutSenderAboveSubjectAndMessageCcMe_shouldDisplayIndicatorInSecondLine() { val adapter = createAdapter(senderAboveSubject = false) val messageListItem = createMessageListItem(ccMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.secondLineView.containsCcMeIndicator()) } @Test fun withoutAttachments_shouldHideAttachmentCountView() { val adapter = createAdapter() Loading Loading @@ -472,8 +429,6 @@ class MessageListAdapterTest : RobolectricTest() { internalDate: Long = 0L, displayName: CharSequence = "irrelevant", displayAddress: Address? = Address.parse("irrelevant@domain.example").first(), toMe: Boolean = false, ccMe: Boolean = false, previewText: String = "irrelevant", isMessageEncrypted: Boolean = false, isRead: Boolean = false, Loading @@ -495,8 +450,6 @@ class MessageListAdapterTest : RobolectricTest() { internalDate, displayName, displayAddress, toMe, ccMe, previewText, isMessageEncrypted, isRead, Loading Loading @@ -530,8 +483,6 @@ class MessageListAdapterTest : RobolectricTest() { val View.attachmentCountView: View get() = findViewById(R.id.attachment) val View.dateView: TextView get() = findViewById(R.id.date) fun TextView.containsToMeIndicator() = textString.startsWith("»") fun TextView.containsCcMeIndicator() = textString.startsWith("›") fun TextView.containsNoSubjectIndicator() = textString.contains(context.getString(R.string.general_no_subject)) fun TextView.getFirstAbsoluteSizeSpanValueOrNull(): Int? { Loading Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListAdapter.kt +4 −17 Original line number Diff line number Diff line Loading @@ -200,12 +200,6 @@ class MessageListAdapter internal constructor( setHasStableIds(true) } private fun recipientSigil(toMe: Boolean, ccMe: Boolean) = when { toMe -> res.getString(R.string.messagelist_sent_to_me_sigil) + " " ccMe -> res.getString(R.string.messagelist_sent_cc_me_sigil) + " " else -> "" } override fun getItemCount(): Int = messages.size + if (hasFooter) 1 else 0 override fun getItemId(position: Int): Long { Loading Loading @@ -341,16 +335,14 @@ class MessageListAdapter internal constructor( setBackgroundColor(holder.itemView, isSelected, isRead, isActive) updateWithThreadCount(holder, displayThreadCount) val beforePreviewText = if (appearance.senderAboveSubject) subject else displayName val sigil = recipientSigil(toMe, ccMe) val messageStringBuilder = SpannableStringBuilder(sigil) .append(beforePreviewText) val messageStringBuilder = SpannableStringBuilder(beforePreviewText) if (appearance.previewLines > 0) { val preview = getPreview(isMessageEncrypted, previewText) messageStringBuilder.append(" ").append(preview) } holder.preview.setText(messageStringBuilder, TextView.BufferType.SPANNABLE) formatPreviewText(holder.preview, beforePreviewText, sigil, isRead) formatPreviewText(holder.preview, beforePreviewText, isRead) holder.subject.typeface = Typeface.create(holder.subject.typeface, maybeBoldTypeface) if (appearance.senderAboveSubject) { Loading @@ -376,15 +368,10 @@ class MessageListAdapter internal constructor( holder.text.text = footerText } private fun formatPreviewText( preview: TextView, beforePreviewText: CharSequence, sigil: String, messageRead: Boolean ) { private fun formatPreviewText(preview: TextView, beforePreviewText: CharSequence, messageRead: Boolean) { val previewText = preview.text as Spannable val beforePreviewLength = beforePreviewText.length + sigil.length val beforePreviewLength = beforePreviewText.length addBeforePreviewSpan(previewText, beforePreviewLength, messageRead) // Set span (color) for preview message Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListItem.kt +0 −2 Original line number Diff line number Diff line Loading @@ -12,8 +12,6 @@ data class MessageListItem( val internalDate: Long, val displayName: CharSequence, val displayAddress: Address?, val toMe: Boolean, val ccMe: Boolean, val previewText: String, val isMessageEncrypted: Boolean, val isRead: Boolean, Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messagelist/MessageListItemMapper.kt +0 −4 Original line number Diff line number Diff line Loading @@ -15,8 +15,6 @@ class MessageListItemMapper( override fun map(message: MessageDetailsAccessor): MessageListItem { val fromAddresses = message.fromAddresses val toAddresses = message.toAddresses val toMe = messageHelper.toMe(account, toAddresses) val ccMe = messageHelper.toMe(account, message.ccAddresses) val previewResult = message.preview val isMessageEncrypted = previewResult.previewType == PreviewType.ENCRYPTED val previewText = if (previewResult.isPreviewTextAvailable) previewResult.previewText else "" Loading @@ -37,8 +35,6 @@ class MessageListItemMapper( message.internalDate, displayName, displayAddress, toMe, ccMe, previewText, isMessageEncrypted, message.isRead, Loading
app/ui/legacy/src/main/res/values/strings.xml +0 −3 Original line number Diff line number Diff line Loading @@ -933,9 +933,6 @@ Please submit bug reports, contribute new features and ask questions at <string name="dialog_attachment_progress_title">Downloading attachment</string> <string name="messagelist_sent_to_me_sigil">»</string> <string name="messagelist_sent_cc_me_sigil">›</string> <string name="settings_list_backup_category">Backup</string> <string name="settings_list_miscellaneous_category">Miscellaneous</string> Loading
app/ui/legacy/src/test/java/com/fsck/k9/ui/messagelist/MessageListAdapterTest.kt +0 −49 Original line number Diff line number Diff line Loading @@ -26,7 +26,6 @@ import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse import org.junit.Assert.assertNull import org.junit.Assert.assertTrue import org.junit.Ignore import org.junit.Test import org.mockito.kotlin.mock import org.robolectric.Robolectric Loading Loading @@ -218,48 +217,6 @@ class MessageListAdapterTest : RobolectricTest() { assertTrue(view.firstLineView.containsNoSubjectIndicator()) } @Test @Ignore("Currently failing. See issue #4152.") fun withSenderAboveSubjectAndMessageToMe_shouldDisplayIndicatorInFirstLine() { val adapter = createAdapter(senderAboveSubject = true) val messageListItem = createMessageListItem(toMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.firstLineView.containsToMeIndicator()) } @Test @Ignore("Currently failing. See issue #4152.") fun withSenderAboveSubjectAndMessageCcMe_shouldDisplayIndicatorInFirstLine() { val adapter = createAdapter(senderAboveSubject = true) val messageListItem = createMessageListItem(ccMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.firstLineView.containsCcMeIndicator()) } @Test fun withoutSenderAboveSubjectAndMessageToMe_shouldDisplayIndicatorInSecondLine() { val adapter = createAdapter(senderAboveSubject = false) val messageListItem = createMessageListItem(toMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.secondLineView.containsToMeIndicator()) } @Test fun withoutSenderAboveSubjectAndMessageCcMe_shouldDisplayIndicatorInSecondLine() { val adapter = createAdapter(senderAboveSubject = false) val messageListItem = createMessageListItem(ccMe = true) val view = adapter.createAndBindView(messageListItem) assertTrue(view.secondLineView.containsCcMeIndicator()) } @Test fun withoutAttachments_shouldHideAttachmentCountView() { val adapter = createAdapter() Loading Loading @@ -472,8 +429,6 @@ class MessageListAdapterTest : RobolectricTest() { internalDate: Long = 0L, displayName: CharSequence = "irrelevant", displayAddress: Address? = Address.parse("irrelevant@domain.example").first(), toMe: Boolean = false, ccMe: Boolean = false, previewText: String = "irrelevant", isMessageEncrypted: Boolean = false, isRead: Boolean = false, Loading @@ -495,8 +450,6 @@ class MessageListAdapterTest : RobolectricTest() { internalDate, displayName, displayAddress, toMe, ccMe, previewText, isMessageEncrypted, isRead, Loading Loading @@ -530,8 +483,6 @@ class MessageListAdapterTest : RobolectricTest() { val View.attachmentCountView: View get() = findViewById(R.id.attachment) val View.dateView: TextView get() = findViewById(R.id.date) fun TextView.containsToMeIndicator() = textString.startsWith("»") fun TextView.containsCcMeIndicator() = textString.startsWith("›") fun TextView.containsNoSubjectIndicator() = textString.contains(context.getString(R.string.general_no_subject)) fun TextView.getFirstAbsoluteSizeSpanValueOrNull(): Int? { Loading