Show correct UI when replying to a voice message (#1658)
Shows voice messages in the room summary. Shows voice messages in the reply context menu and composer. Show replies to voice messages in the timeline. (before this PR voice messages were shown the same as audio messages) Story: https://github.com/vector-im/element-meta/issues/2106
This commit is contained in:
parent
61d59913bb
commit
d7ce326612
18 changed files with 110 additions and 23 deletions
|
|
@ -128,7 +128,11 @@ class DefaultRoomLastMessageFormatter @Inject constructor(
|
|||
sp.getString(CommonStrings.common_file)
|
||||
}
|
||||
is AudioMessageType -> {
|
||||
sp.getString(CommonStrings.common_audio)
|
||||
if (messageType.isVoiceMessage) {
|
||||
sp.getString(CommonStrings.common_voice_message)
|
||||
} else {
|
||||
sp.getString(CommonStrings.common_audio)
|
||||
}
|
||||
}
|
||||
is OtherMessageType -> {
|
||||
messageType.body
|
||||
|
|
|
|||
|
|
@ -163,6 +163,7 @@ class DefaultRoomLastMessageFormatterTest {
|
|||
TextMessageType(body, null),
|
||||
VideoMessageType(body, MediaSource("url"), null),
|
||||
AudioMessageType(body, MediaSource("url"), null, null, false),
|
||||
AudioMessageType(body, MediaSource("url"), null, null, true),
|
||||
ImageMessageType(body, MediaSource("url"), null),
|
||||
FileMessageType(body, MediaSource("url"), null),
|
||||
LocationMessageType(body, "geo:1,2", null),
|
||||
|
|
@ -198,7 +199,12 @@ class DefaultRoomLastMessageFormatterTest {
|
|||
for ((type, result) in resultsInDm) {
|
||||
val expectedResult = when (type) {
|
||||
is VideoMessageType -> "Video"
|
||||
is AudioMessageType -> "Audio"
|
||||
is AudioMessageType -> {
|
||||
when (type.isVoiceMessage) {
|
||||
true -> "Voice message"
|
||||
false -> "Audio"
|
||||
}
|
||||
}
|
||||
is ImageMessageType -> "Image"
|
||||
is FileMessageType -> "File"
|
||||
is LocationMessageType -> "Shared location"
|
||||
|
|
@ -216,7 +222,12 @@ class DefaultRoomLastMessageFormatterTest {
|
|||
val string = result.toString()
|
||||
val expectedResult = when (type) {
|
||||
is VideoMessageType -> "$senderName: Video"
|
||||
is AudioMessageType -> "$senderName: Audio"
|
||||
is AudioMessageType -> {
|
||||
when (type.isVoiceMessage) {
|
||||
true -> "$senderName: Voice message"
|
||||
false -> "$senderName: Audio"
|
||||
}
|
||||
}
|
||||
is ImageMessageType -> "$senderName: Image"
|
||||
is FileMessageType -> "$senderName: File"
|
||||
is LocationMessageType -> "$senderName: Shared location"
|
||||
|
|
@ -228,7 +239,12 @@ class DefaultRoomLastMessageFormatterTest {
|
|||
}
|
||||
val shouldCreateAnnotatedString = when (type) {
|
||||
is VideoMessageType -> true
|
||||
is AudioMessageType -> true
|
||||
is AudioMessageType -> {
|
||||
when (type.isVoiceMessage) {
|
||||
true -> true
|
||||
false -> true
|
||||
}
|
||||
}
|
||||
is ImageMessageType -> true
|
||||
is FileMessageType -> true
|
||||
is LocationMessageType -> false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue