diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt index 879b9f398e..a2b5d8816b 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -1001,16 +1001,11 @@ class ChatActivity : var result: String? = null message?.let { if (message.messageParameters.isNotEmpty()) { - runCatching { - message.messageParameters as HashMap>? - val fileParameters = FileParameters(message.messageParameters) - result = fileParameters.id - }.onFailure { e -> - when (e) { - is ClassCastException -> {} // weird - else -> Log.e(TAG, "Error in LazyListState.visibleItemsWithThreshold $e") - } - } + val normalizedParameters = HashMap>( + message.messageParameters.mapValues { (_, params) -> HashMap(params) } + ) + val fileParameters = FileParameters(normalizedParameters) + result = fileParameters.id } } diff --git a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt index d07efe2ca7..45df391c85 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt @@ -68,7 +68,13 @@ fun MediaMessage( onImageClick: (Int) -> Unit ) { val fileParameters = - remember { FileParameters(message.messageParameters as HashMap>?) } + remember { + FileParameters( + HashMap( + message.messageParameters.mapValues { (_, params) -> HashMap(params) } + ) + ) + } val hasExplicitCaption = message.plainMessage != FILE_PLACEHOLDER_MESSAGE val hasPreview = !typeContent.previewUrl.isNullOrEmpty()