fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v26.03.23 (#6444)

* fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v26.03.23

* Fix `RoomInfo` test fixture

* Add `activeCallIntentConsensus` to `RoomInfo`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
This commit is contained in:
renovate[bot] 2026-03-24 11:22:32 +01:00 committed by GitHub
parent 21898cafc2
commit a6a63736e7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 93 additions and 1 deletions

View file

@ -0,0 +1,43 @@
/*
* Copyright (c) 2026 Element Creations Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
* Please see LICENSE files in the repository root for full details.
*/
package io.element.android.libraries.matrix.api.room
import io.element.android.libraries.matrix.api.notification.CallIntent
/**
* Represents the consensus state of [CallIntent] among room members.
* Call members can advertise their intent to use audio or video, clients can
* use this in the UI and also to decide to start camera or not when joining.
*
* This enum distinguishes between full consensus (all members advertise and
* agree), partial consensus (only some members advertise, but those who do
* agree), and no consensus (either no one advertises or advertisers disagree).
*/
sealed interface CallIntentConsensus {
/**
* All members advertise and agree on the same [callIntent].
*/
data class Full(val callIntent: CallIntent) : CallIntentConsensus
/**
* Some members advertise and agree on the same [callIntent], but not all of them.
*/
data class Partial(
/** The call intent that the agreeing members have advertised. */
val callIntent: CallIntent,
/** The number of members who advertise and agree on the same [callIntent]. */
val agreeingCount: Int,
/** The total number of members in the call. */
val totalCount: Int,
) : CallIntentConsensus
/**
* No consensus. No one advertises or advertisers disagree.
*/
data object None : CallIntentConsensus
}

View file

@ -77,6 +77,7 @@ data class RoomInfo(
val roomVersion: String?,
val privilegedCreatorRole: Boolean,
val isLowPriority: Boolean,
val activeCallIntentConsensus: CallIntentConsensus,
) {
val aliases: List<RoomAlias>
get() = listOfNotNull(canonicalAlias) + alternativeAliases