Added conversation details to the conversation list (#336)

This commit is contained in:
Agnieszka C 2025-03-02 10:30:53 +01:00
parent f735763c21
commit 3085b51b86
2 changed files with 17 additions and 0 deletions

View file

@ -15,6 +15,7 @@ import org.fossify.commons.helpers.KEY_PHONE
import org.fossify.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import org.fossify.messages.R import org.fossify.messages.R
import org.fossify.messages.activities.ConversationDetailsActivity
import org.fossify.messages.activities.SimpleActivity import org.fossify.messages.activities.SimpleActivity
import org.fossify.messages.dialogs.RenameConversationDialog import org.fossify.messages.dialogs.RenameConversationDialog
import org.fossify.messages.extensions.config import org.fossify.messages.extensions.config
@ -24,6 +25,7 @@ import org.fossify.messages.extensions.markThreadMessagesRead
import org.fossify.messages.extensions.markThreadMessagesUnread import org.fossify.messages.extensions.markThreadMessagesUnread
import org.fossify.messages.extensions.renameConversation import org.fossify.messages.extensions.renameConversation
import org.fossify.messages.extensions.updateConversationArchivedStatus import org.fossify.messages.extensions.updateConversationArchivedStatus
import org.fossify.messages.helpers.THREAD_ID
import org.fossify.messages.helpers.refreshMessages import org.fossify.messages.helpers.refreshMessages
import org.fossify.messages.messaging.isShortCodeWithLetters import org.fossify.messages.messaging.isShortCodeWithLetters
import org.fossify.messages.models.Conversation import org.fossify.messages.models.Conversation
@ -54,6 +56,7 @@ class ConversationsAdapter(
findItem(R.id.cab_copy_number).isVisible = isSingleSelection && !isGroupConversation findItem(R.id.cab_copy_number).isVisible = isSingleSelection && !isGroupConversation
findItem(R.id.cab_rename_conversation).isVisible = findItem(R.id.cab_rename_conversation).isVisible =
isSingleSelection && isGroupConversation isSingleSelection && isGroupConversation
findItem(R.id.cab_conversation_details).isVisible = isSingleSelection
findItem(R.id.cab_mark_as_read).isVisible = selectedItems.any { !it.read } findItem(R.id.cab_mark_as_read).isVisible = selectedItems.any { !it.read }
findItem(R.id.cab_mark_as_unread).isVisible = selectedItems.any { it.read } findItem(R.id.cab_mark_as_unread).isVisible = selectedItems.any { it.read }
findItem(R.id.cab_archive).isVisible = archiveAvailable findItem(R.id.cab_archive).isVisible = archiveAvailable
@ -74,6 +77,7 @@ class ConversationsAdapter(
R.id.cab_delete -> askConfirmDelete() R.id.cab_delete -> askConfirmDelete()
R.id.cab_archive -> askConfirmArchive() R.id.cab_archive -> askConfirmArchive()
R.id.cab_rename_conversation -> renameConversation(getSelectedItems().first()) R.id.cab_rename_conversation -> renameConversation(getSelectedItems().first())
R.id.cab_conversation_details -> showConversationDetails()
R.id.cab_mark_as_read -> markAsRead() R.id.cab_mark_as_read -> markAsRead()
R.id.cab_mark_as_unread -> markAsUnread() R.id.cab_mark_as_unread -> markAsUnread()
R.id.cab_pin_conversation -> pinConversation(true) R.id.cab_pin_conversation -> pinConversation(true)
@ -241,6 +245,14 @@ class ConversationsAdapter(
} }
} }
private fun showConversationDetails() {
val conversation = getSelectedItems().firstOrNull() ?: return
Intent(activity, ConversationDetailsActivity::class.java).apply {
putExtra(THREAD_ID, conversation.threadId)
activity.startActivity(this)
}
}
private fun markAsRead() { private fun markAsRead() {
if (selectedKeys.isEmpty()) { if (selectedKeys.isEmpty()) {
return return

View file

@ -42,6 +42,11 @@
android:icon="@drawable/ic_edit_vector" android:icon="@drawable/ic_edit_vector"
android:title="@string/rename_conversation" android:title="@string/rename_conversation"
app:showAsAction="ifRoom" /> app:showAsAction="ifRoom" />
<item
android:id="@+id/cab_conversation_details"
android:icon="@drawable/ic_info_vector"
android:title="@string/conversation_details"
app:showAsAction="ifRoom" />
<item <item
android:id="@+id/cab_mark_as_read" android:id="@+id/cab_mark_as_read"
android:showAsAction="never" android:showAsAction="never"