Render PinViolation above the composer.
This commit is contained in:
parent
81fc52dcfa
commit
c69e5f47e5
18 changed files with 509 additions and 1 deletions
|
|
@ -0,0 +1,34 @@
|
|||
/*
|
||||
* Copyright 2024 New Vector Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.api.encryption.identity
|
||||
|
||||
enum class IdentityState {
|
||||
/** The user is verified with us */
|
||||
Verified,
|
||||
|
||||
/**
|
||||
* Either this is the first identity we have seen for this user, or the
|
||||
* user has acknowledged a change of identity explicitly e.g. by
|
||||
* clicking OK on a notification.
|
||||
*/
|
||||
Pinned,
|
||||
|
||||
/**
|
||||
* The user's identity has changed since it was pinned. The user should be
|
||||
* notified about this and given the opportunity to acknowledge the
|
||||
* change, which will make the new identity pinned.
|
||||
*/
|
||||
PinViolation,
|
||||
|
||||
/**
|
||||
* The user's identity has changed, and before that it was verified. This
|
||||
* is a serious problem. The user can either verify again to make this
|
||||
* identity verified, or withdraw verification to make it pinned.
|
||||
*/
|
||||
VerificationViolation,
|
||||
}
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* Copyright 2024 New Vector Ltd.
|
||||
*
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.api.encryption.identity
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
|
||||
data class IdentityStateChange(
|
||||
val userId: UserId,
|
||||
val identityState: IdentityState,
|
||||
)
|
||||
|
|
@ -16,6 +16,7 @@ import io.element.android.libraries.matrix.api.core.SessionId
|
|||
import io.element.android.libraries.matrix.api.core.TransactionId
|
||||
import io.element.android.libraries.matrix.api.core.UniqueId
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.api.encryption.identity.IdentityStateChange
|
||||
import io.element.android.libraries.matrix.api.media.AudioInfo
|
||||
import io.element.android.libraries.matrix.api.media.FileInfo
|
||||
import io.element.android.libraries.matrix.api.media.ImageInfo
|
||||
|
|
@ -52,6 +53,7 @@ interface MatrixRoom : Closeable {
|
|||
|
||||
val roomInfoFlow: Flow<MatrixRoomInfo>
|
||||
val roomTypingMembersFlow: Flow<List<UserId>>
|
||||
val identityStateChangesFlow: Flow<List<IdentityStateChange>>
|
||||
|
||||
/**
|
||||
* A one-to-one is a room with exactly 2 members.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue