From 8d9d83f15f74fd1964e43b2e1932ca88295ca6a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Thu, 6 Feb 2025 08:34:51 +0100 Subject: [PATCH] feat(ffi): add `history_visibility_override` param to the create room fn --- bindings/matrix-sdk-ffi/src/client.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bindings/matrix-sdk-ffi/src/client.rs b/bindings/matrix-sdk-ffi/src/client.rs index 3d67c3565..e2c70c298 100644 --- a/bindings/matrix-sdk-ffi/src/client.rs +++ b/bindings/matrix-sdk-ffi/src/client.rs @@ -56,6 +56,7 @@ use ruma::{ ignored_user_list::IgnoredUserListEventContent, key::verification::request::ToDeviceKeyVerificationRequestEvent, room::{ + history_visibility::RoomHistoryVisibilityEventContent, join_rules::{ AllowRule as RumaAllowRule, JoinRule as RumaJoinRule, RoomJoinRulesEventContent, }, @@ -80,6 +81,7 @@ use crate::{ encryption::Encryption, notification::NotificationClient, notification_settings::NotificationSettings, + room::RoomHistoryVisibility, room_directory_search::RoomDirectorySearch, room_preview::RoomPreview, ruma::{AuthData, MediaSource}, @@ -1400,6 +1402,8 @@ pub struct CreateRoomParameters { #[uniffi(default = None)] pub join_rule_override: Option, #[uniffi(default = None)] + pub history_visibility_override: Option, + #[uniffi(default = None)] pub canonical_alias: Option, } @@ -1447,6 +1451,12 @@ impl TryFrom for create_room::v3::Request { initial_state.push(InitialStateEvent::new(content).to_raw_any()); } + if let Some(history_visibility_override) = value.history_visibility_override { + let content = + RoomHistoryVisibilityEventContent::new(history_visibility_override.try_into()?); + initial_state.push(InitialStateEvent::new(content).to_raw_any()); + } + request.initial_state = initial_state; if let Some(power_levels) = value.power_level_content_override {