Browse Source

Fix room settings not treating unencrypted DMs as DMs (#3545)

pull/3546/head
Jorge Martin Espinosa 3 weeks ago committed by GitHub
parent
commit
2ce8bb7682
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomMembers.kt
  2. 4
      libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomMembersTest.kt

2
libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomMembers.kt

@ -44,7 +44,7 @@ fun MatrixRoom.getDirectRoomMember(roomMembersState: MatrixRoomMembersState): St @@ -44,7 +44,7 @@ fun MatrixRoom.getDirectRoomMember(roomMembersState: MatrixRoomMembersState): St
derivedStateOf {
roomMembers
?.filter { it.membership.isActive() }
?.takeIf { it.size == 2 && isDirect && isEncrypted }
?.takeIf { it.size == 2 && isDirect }
?.find { it.userId != sessionId }
}
}

4
libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomMembersTest.kt

@ -60,7 +60,7 @@ class MatrixRoomMembersTest { @@ -60,7 +60,7 @@ class MatrixRoomMembersTest {
}
@Test
fun `getDirectRoomMember emit null if the room is not encrypted`() = runTest {
fun `getDirectRoomMember emits other member even if the room is not encrypted`() = runTest {
val matrixRoom = FakeMatrixRoom(
sessionId = A_USER_ID,
isEncrypted = false,
@ -71,7 +71,7 @@ class MatrixRoomMembersTest { @@ -71,7 +71,7 @@ class MatrixRoomMembersTest {
MatrixRoomMembersState.Ready(persistentListOf(roomMember1, roomMember2))
)
}.test {
assertThat(awaitItem().value).isNull()
assertThat(awaitItem().value).isEqualTo(roomMember2)
}
}

Loading…
Cancel
Save