mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-04 10:32:34 +00:00
Fix 'Conversation label cannot be empty' error (#6823)
This happens when building a `ShortcutInfoCompat` in `DefaultNotificationConversationService.onSendMessage` when the provided room name is not null but it's empty.
This commit is contained in:
committed by
GitHub
parent
42c141109f
commit
64d9336901
+1
-1
@@ -571,7 +571,7 @@ class MessageComposerPresenter(
|
|||||||
notificationConversationService.onSendMessage(
|
notificationConversationService.onSendMessage(
|
||||||
sessionId = room.sessionId,
|
sessionId = room.sessionId,
|
||||||
roomId = roomInfo.id,
|
roomId = roomInfo.id,
|
||||||
roomName = roomInfo.name ?: roomInfo.id.value,
|
roomName = roomInfo.name,
|
||||||
roomIsDirect = roomInfo.isDm,
|
roomIsDirect = roomInfo.isDm,
|
||||||
roomAvatarUrl = roomInfo.avatarUrl ?: roomMembers.getDirectRoomMember(roomInfo = roomInfo, sessionId = room.sessionId)?.avatarUrl,
|
roomAvatarUrl = roomInfo.avatarUrl ?: roomMembers.getDirectRoomMember(roomInfo = roomInfo, sessionId = room.sessionId)?.avatarUrl,
|
||||||
)
|
)
|
||||||
|
|||||||
+1
-1
@@ -22,7 +22,7 @@ interface NotificationConversationService {
|
|||||||
suspend fun onSendMessage(
|
suspend fun onSendMessage(
|
||||||
sessionId: SessionId,
|
sessionId: SessionId,
|
||||||
roomId: RoomId,
|
roomId: RoomId,
|
||||||
roomName: String,
|
roomName: String?,
|
||||||
roomIsDirect: Boolean,
|
roomIsDirect: Boolean,
|
||||||
roomAvatarUrl: String?,
|
roomAvatarUrl: String?,
|
||||||
)
|
)
|
||||||
|
|||||||
+4
-3
@@ -76,7 +76,7 @@ class DefaultNotificationConversationService(
|
|||||||
override suspend fun onSendMessage(
|
override suspend fun onSendMessage(
|
||||||
sessionId: SessionId,
|
sessionId: SessionId,
|
||||||
roomId: RoomId,
|
roomId: RoomId,
|
||||||
roomName: String,
|
roomName: String?,
|
||||||
roomIsDirect: Boolean,
|
roomIsDirect: Boolean,
|
||||||
roomAvatarUrl: String?,
|
roomAvatarUrl: String?,
|
||||||
) {
|
) {
|
||||||
@@ -93,10 +93,11 @@ class DefaultNotificationConversationService(
|
|||||||
val imageLoader = imageLoaderHolder.get(client)
|
val imageLoader = imageLoaderHolder.get(client)
|
||||||
|
|
||||||
val defaultShortcutIconSize = ShortcutManagerCompat.getIconMaxWidth(context)
|
val defaultShortcutIconSize = ShortcutManagerCompat.getIconMaxWidth(context)
|
||||||
|
val name = roomName?.takeIf { it.isNotBlank() } ?: roomId.value
|
||||||
val icon = bitmapLoader.getRoomBitmap(
|
val icon = bitmapLoader.getRoomBitmap(
|
||||||
avatarData = AvatarData(
|
avatarData = AvatarData(
|
||||||
id = roomId.value,
|
id = roomId.value,
|
||||||
name = roomName,
|
name = name,
|
||||||
url = roomAvatarUrl,
|
url = roomAvatarUrl,
|
||||||
size = AvatarSize.RoomDetailsHeader,
|
size = AvatarSize.RoomDetailsHeader,
|
||||||
),
|
),
|
||||||
@@ -105,7 +106,7 @@ class DefaultNotificationConversationService(
|
|||||||
)?.let(IconCompat::createWithBitmap)
|
)?.let(IconCompat::createWithBitmap)
|
||||||
|
|
||||||
val shortcutInfo = ShortcutInfoCompat.Builder(context, createShortcutId(sessionId, roomId))
|
val shortcutInfo = ShortcutInfoCompat.Builder(context, createShortcutId(sessionId, roomId))
|
||||||
.setShortLabel(roomName)
|
.setShortLabel(name)
|
||||||
.setIcon(icon)
|
.setIcon(icon)
|
||||||
.setIntent(intentProvider.getViewRoomIntent(sessionId, roomId, threadId = null, eventId = null))
|
.setIntent(intentProvider.getViewRoomIntent(sessionId, roomId, threadId = null, eventId = null))
|
||||||
.setCategories(categories)
|
.setCategories(categories)
|
||||||
|
|||||||
+1
-1
@@ -16,7 +16,7 @@ class FakeNotificationConversationService : NotificationConversationService {
|
|||||||
override suspend fun onSendMessage(
|
override suspend fun onSendMessage(
|
||||||
sessionId: SessionId,
|
sessionId: SessionId,
|
||||||
roomId: RoomId,
|
roomId: RoomId,
|
||||||
roomName: String,
|
roomName: String?,
|
||||||
roomIsDirect: Boolean,
|
roomIsDirect: Boolean,
|
||||||
roomAvatarUrl: String?,
|
roomAvatarUrl: String?,
|
||||||
) = Unit
|
) = Unit
|
||||||
|
|||||||
Reference in New Issue
Block a user