Add a developer option for history sharing on invite (#4821)
Adds a new developer flag, enabling our experimental support for MSC4268.
This commit is contained in:
committed by
GitHub
parent
17c0bd88b6
commit
9be05262e2
@@ -112,6 +112,17 @@ enum class FeatureFlags(
|
||||
defaultValue = { false },
|
||||
isFinished = false,
|
||||
),
|
||||
EnableKeyShareOnInvite(
|
||||
key = "feature.enableKeyShareOnInvite",
|
||||
title = "Share encrypted history with new members",
|
||||
description = "When inviting a user to an encrypted room that has history visibility set to \"shared\"," +
|
||||
" share encrypted history with that user, and accept encrypted history when you are invited to such a room." +
|
||||
"\nRequires an app restart to take effect." +
|
||||
"\n\nWARNING: this feature is EXPERIMENTAL and not all security precautions are implemented." +
|
||||
" Do not enable on production accounts.",
|
||||
defaultValue = { false },
|
||||
isFinished = false,
|
||||
),
|
||||
Knock(
|
||||
key = "feature.knock",
|
||||
title = "Ask to join",
|
||||
|
||||
@@ -127,6 +127,7 @@ class RustMatrixClientFactory @Inject constructor(
|
||||
TrustRequirement.UNTRUSTED
|
||||
}
|
||||
)
|
||||
.enableShareHistoryOnInvite(featureFlagService.isFeatureEnabled(FeatureFlags.EnableKeyShareOnInvite))
|
||||
.run {
|
||||
// Apply sliding sync version settings
|
||||
when (slidingSyncType) {
|
||||
|
||||
@@ -41,6 +41,7 @@ class FakeFfiClientBuilder : ClientBuilder(NoPointer) {
|
||||
override fun slidingSyncVersionBuilder(versionBuilder: SlidingSyncVersionBuilder) = this
|
||||
override fun userAgent(userAgent: String) = this
|
||||
override fun username(username: String) = this
|
||||
override fun enableShareHistoryOnInvite(enableShareHistoryOnInvite: Boolean): ClientBuilder = this
|
||||
|
||||
override suspend fun buildWithQrCode(qrCodeData: QrCodeData, oidcConfiguration: OidcConfiguration, progressListener: QrLoginProgressListener): Client {
|
||||
return FakeFfiClient()
|
||||
|
||||
Reference in New Issue
Block a user