diff --git a/CHANGES.md b/CHANGES.md index c8636cbef8..dfce79d260 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -9,6 +9,8 @@ Improvements šŸ™Œ: Bugfix šŸ›: - Bug in WidgetContent.computeURL() (#2767) + - Duplicate thumbs | Mobile reactions for šŸ‘ and šŸ‘Ž are not the same as web (#2776) + - Join room by alias other federation error (#2778) Translations šŸ—£: - diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/peeking/PeekRoomTask.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/peeking/PeekRoomTask.kt index 5a82d74537..5b211c505f 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/peeking/PeekRoomTask.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/peeking/PeekRoomTask.kt @@ -17,6 +17,7 @@ package org.matrix.android.sdk.internal.session.room.peeking import org.matrix.android.sdk.api.MatrixPatterns +import org.matrix.android.sdk.api.extensions.tryOrNull import org.matrix.android.sdk.api.session.events.model.EventType import org.matrix.android.sdk.api.session.events.model.toModel import org.matrix.android.sdk.api.session.room.model.RoomAvatarContent @@ -65,23 +66,29 @@ internal class DefaultPeekRoomTask @Inject constructor( } // Is it a public room? - val publicRepoResult = when (getRoomDirectoryVisibilityTask.execute(GetRoomDirectoryVisibilityTask.Params(roomId))) { - RoomDirectoryVisibility.PRIVATE -> { - // We cannot resolve this room :/ - null - } - RoomDirectoryVisibility.PUBLIC -> { + val visibilityRes = tryOrNull("## PEEK: failed to get visibility") { + getRoomDirectoryVisibilityTask.execute(GetRoomDirectoryVisibilityTask.Params(roomId)) + } + val publicRepoResult = when (visibilityRes) { + RoomDirectoryVisibility.PUBLIC -> { // Try to find it in directory val filter = if (isAlias) PublicRoomsFilter(searchTerm = params.roomIdOrAlias.substring(1)) else null - getPublicRoomTask.execute(GetPublicRoomTask.Params( - server = serverList.firstOrNull(), - publicRoomsParams = PublicRoomsParams( - filter = filter, - limit = 20.takeIf { filter != null } ?: 100 - ) - )).chunk?.firstOrNull { it.roomId == roomId } + tryOrNull("## PEEK: failed to GetPublicRoomTask") { + getPublicRoomTask.execute(GetPublicRoomTask.Params( + server = serverList.firstOrNull(), + publicRoomsParams = PublicRoomsParams( + filter = filter, + limit = 20.takeIf { filter != null } ?: 100 + ) + )) + }?.chunk?.firstOrNull { it.roomId == roomId } + } + else -> { + // RoomDirectoryVisibility.PRIVATE or null + // We cannot resolve this room :/ + null } } diff --git a/vector/src/main/java/im/vector/app/features/reactions/data/EmojiDataSource.kt b/vector/src/main/java/im/vector/app/features/reactions/data/EmojiDataSource.kt index ce17459bb3..891f083644 100644 --- a/vector/src/main/java/im/vector/app/features/reactions/data/EmojiDataSource.kt +++ b/vector/src/main/java/im/vector/app/features/reactions/data/EmojiDataSource.kt @@ -95,6 +95,6 @@ class EmojiDataSource @Inject constructor( } companion object { - val quickEmojis = listOf("šŸ‘", "šŸ‘Ž", "šŸ˜„", "šŸŽ‰", "šŸ˜•", "ā¤ļø", "šŸš€", "šŸ‘€") + val quickEmojis = listOf("\uD83D\uDC4Dļø", "\uD83D\uDC4Eļø", "šŸ˜„", "šŸŽ‰", "šŸ˜•", "ā¤ļø", "šŸš€", "šŸ‘€") } }