commit f809d06b3e72720af5d2b9973968a80d43f9b8cb
parent d93a8e24593144c103258608fb824838e8464563
Author: t3sserakt <t3ss@posteo.de>
Date: Wed, 8 Apr 2026 13:38:29 +0200
group overview text in chat overview
Diffstat:
1 file changed, 31 insertions(+), 8 deletions(-)
diff --git a/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/MainActivity.kt b/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/MainActivity.kt
@@ -221,10 +221,15 @@ class MainActivity : AppCompatActivity() {
MessageKind.LEAVE -> {
var uuid = gnunetChat.getUserPointerForContext(chatContext)
val chatContact = gnunetChat.getSenderFromMessage(chatMessage)
+ val contactName = if (chatContact.name.isNotBlank()) {
+ chatContact.name
+ } else {
+ "A user"
+ }
val lastMessagePreview = if (chatMessage.kind == MessageKind.JOIN) {
- "${chatContact.name} joined the chat"
+ "$contactName joined the chat"
} else {
- "${chatContact.name} left the chat"
+ "$contactName left the chat"
}
val viewModel = getChatViewModel(chatContext)
@@ -245,7 +250,7 @@ class MainActivity : AppCompatActivity() {
chatContext.userPointer = uuid
chats[uuid] = chatContext
chatOverviewViewModel.addOrUpdateChat(
- ChatSummary(chatContext, chatContact.name, lastMessagePreview)
+ ChatSummary(chatContext, contactName, lastMessagePreview)
)
} else {
chatContext.userPointer = uuid
@@ -254,7 +259,11 @@ class MainActivity : AppCompatActivity() {
}
val displayContext = chats[uuid] ?: chatContext
val group = gnunetChat.getGroupFromContext(chatContext)
- val displayName = group?.name ?: chatContact.name
+ val displayName = if (group != null && group.name.isNotBlank()) {
+ group.name
+ } else {
+ contactName
+ }
chatOverviewViewModel.addOrUpdateChat(
ChatSummary(displayContext, displayName, lastMessagePreview)
@@ -363,10 +372,16 @@ class MainActivity : AppCompatActivity() {
chats[uuid] = chatContext
contact.blocked = gnunetChat.isContactBlocked(contact)
+ val contactDisplayName = if (contact.name.isNotBlank()) {
+ contact.name
+ } else {
+ val key = gnunetChat.getContactKey(contact)
+ if (key.isNotBlank()) "Contact (${key.take(8)}...)" else "Unknown contact"
+ }
summaries.add(
ChatSummary(
chatContext = chatContext,
- displayName = contact.name,
+ displayName = contactDisplayName,
contact = contact
)
)
@@ -390,16 +405,24 @@ class MainActivity : AppCompatActivity() {
Log.w(TAG, "listGroupContacts failed for ${group.name}", t)
emptyList()
}
- val memberPreview = if (members.isNotEmpty()) {
- members.joinToString(", ") { it.name } + " joined the chat"
+ val namedMembers = members.filter { it.name.isNotBlank() }
+ val memberPreview = if (namedMembers.isNotEmpty()) {
+ namedMembers.joinToString(", ") { it.name } + " joined the chat"
+ } else if (members.isNotEmpty()) {
+ "${members.size} member(s) in the chat"
} else {
null
}
+ val groupDisplayName = if (group.name.isNotBlank()) {
+ group.name
+ } else {
+ "Lobby"
+ }
summaries.add(
ChatSummary(
chatContext = chatContext,
- displayName = group.name,
+ displayName = groupDisplayName,
lastMessagePreview = memberPreview,
group = group
)