26 Commits

Author SHA1 Message Date
Mauro Romito
465f832ba5 remove space FFs 2026-02-26 16:29:52 +01:00
Doug
77496934ce Use our own JoinRule type which doesn't include the reserved .private case. (#5056)
* Stop using Rust's JoinRule.private in mocks.

It isn't used anywhere else (see MSC4413 for more context).

* Use our own JoinRule (and AllowRule) types.

* Update ElementX/Sources/Services/Room/JoinRule.swift

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2026-02-06 13:54:53 +00:00
Doug
cdf615ae5f Remove the protocol for SpaceServiceRoom given its a struct type. (#5000)
* Remove the protocol for SpaceServiceRoom given its a struct type.

* Fix a few missed mocks in the unit tests.
2026-01-26 09:45:46 +00:00
Doug
a19c7fff1f Rename SpaceRoomProxy to SpaceServiceRoom and stop proxying the struct. (#4952)
* Rename SpaceRoomProxy to SpaceServiceRoom.

The underlying type is a struct, we don't need to proxy it.

* Actually stop proxying the SpaceRoom.
2026-01-13 12:00:20 +00:00
Mauro Romito
a48032e7fd update the history visibility state, only if allowed, and also update the history visibility value 2026-01-08 10:13:29 +01:00
Mauro Romito
6c824efac3 check permissions and if a space before calling sec and privacy APIs 2026-01-08 10:13:29 +01:00
Mauro Romito
ea8b2b16f9 better check if an user can edit addresses 2025-12-18 11:54:23 +01:00
Stefan Ceriu
b762ce4fc0 Update history visible settings (#4861)
* Fixes #4852 - Update history visible settings

* Address PR comments and move attributed strings to the view state
2025-12-17 15:04:02 +02:00
Mauro Romito
df742ea53d handle the case where a non parent joined space is already available in the existing restricted join rule 2025-12-12 12:13:58 +01:00
Mauro Romito
c82732ec98 pr suggestions 2025-12-04 16:23:34 +01:00
Mauro Romito
7d86d8057d implemented the ask to join restricted rule join UI, and added tests and previews for it. 2025-12-04 16:23:34 +01:00
Mauro Romito
084e11d75e two more edge cases tests 2025-12-02 18:17:16 +01:00
Mauro Romito
4b28d61d46 pr suggestions and updated tests 2025-12-02 18:17:16 +01:00
Mauro Romito
73ec4c16ab implemented a way to update the desired setting after pressing done, and added tests 2025-12-02 18:17:16 +01:00
Mauro Romito
2968f67514 implemented the navigation to the manage auth spaces screen
# Conflicts:
#	ElementX/Sources/FlowCoordinators/RoomFlowCoordinator.swift
#	ElementX/Sources/FlowCoordinators/SpaceSettingsFlowCoordinator.swift
#	ElementX/Sources/Screens/SecurityAndPrivacyScreen/SecurityAndPrivacyScreenCoordinator.swift
#	ElementX/Sources/Screens/SecurityAndPrivacyScreen/SecurityAndPrivacyScreenModels.swift
2025-12-02 18:17:16 +01:00
Doug
3612a8d413 Add the same unsaved changes alerts that Android has. (#4803)
* Add an alert to Discard or Save when there are unsaved changes on the RoomDetailsEditScreen.

* Add an alert to Discard or Save when there are unsaved changes on the UserDetailsEditScreen.

* Add an alert to Discard or Save when there are unsaved changes on the SecurityAndPrivacyScreen.

* Update strings.
2025-12-01 13:02:50 +00:00
Mauro Romito
66266c1223 updated existing preview tests and added a test for the single space cases
fixed a bug where was not possible to re-select the space members option with unknown spaces.

pr suggestions
2025-11-27 13:19:10 +01:00
Mauro Romito
2292f4bd4f single space access implementation
also added the copies for the single and multiple spaces selection
2025-11-27 13:19:10 +01:00
Mauro Romito
afbbbeb419 Always show security and privacy, and just hide the knocking jojn rule option through the feature flag 2025-11-11 12:31:04 +01:00
Mauro
6160c44d67 Update copyright holding and dates (#4640)
* Update copyright holding and dates

* compound IDE Macros updated

* update copyright

* update copyrights done

* update templates and README
2025-10-21 14:34:56 +02:00
Stefan Ceriu
1ae6fc67c4 SDK update (#3891)
* Bump the RustSDK to v25.03.11

* Replace oidc login prompt with nil following the changes from https://github.com/matrix-org/matrix-rust-sdk/pull/4761

```
/// * `prompt` - The desired user experience in the web UI. No value means
///   that the user wishes to login into an existing account, and a value of
///   `Create` means that the user wishes to register a new account.
```

* Fix trailing closure warnings

* Update the client proxy after making `getNotificationSettings()` and  `cachedAvatarUrl()` async (they used to be blocking on the rust side).

* Move `Room.isEncrypted` to the info publisher and manually update the encryption state when creating the room.

* Bump the SDK again to v25.03.12 - This introduces a new way to configure the tokio runtime that we can use to have extensions use less memory
- introduce a new Target struct that takes care of setting up rust services (tracing and tokio) for our various targets
- cleanup MXLog and friends

* Address PR comments

* Bump the SDK again, switch back to using `.consent` as the OIDC login prompt (which was reintroduced in matrix-org/matrix-rust-sdk/pull/4791)
2025-03-13 11:17:37 +02:00
Stefan Ceriu
49070573d4 Improve how alias settings are handled, add unit tests (#3686) 2025-01-20 15:43:47 +02:00
Mauro
79332cb30a Security and privacy part 2 (#3637)
* handling the history visibility flag

* better logic to handle visibility

* better handling of the visibility options state

* added some copies, and the public room directory

visibility state

* completed the UI

added also the preview tests

* improved the handling of the directory visibility

* added the space users case

and improved handling of the access -> vsibility reaction. Also added a simple error handling for the public directory toggle

* added the edit room address view

but is missing its full implementation

* implement the UI for the edit room address screen

* implemented error checking

when editing the address

* updated preview tests and improved code

* typo fix

* Fix various issues after rebasing.

* Fix build errors and broken snapshot tests

* Adopt latest room privacy and canonical alias setting APIs

* Add support for creating and editing the room's alias.

* Add support for saving room privacy setting changes.

* Fix room alias screen snapshot tests following recent changes.

---------

Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2025-01-15 11:50:08 +02:00
manuroe
c29f4cc9b4 Dual licensing: AGPL + Element Commercial (#3657)
* New LICENSE-COMMERCIAL file

* Apply dual licenses: AGPL + Element Commercial to file headers

* Update README with dual licensing
2025-01-06 11:27:37 +01:00
Stefan Ceriu
265eaba3ae Fix state change commented by mistake and simplify snapshot test setup (+ a couple of warnings) 2024-12-17 11:06:33 +02:00
Mauro
35e24656d7 Security and privacy part 1 (#3617)
* added the security and settings button in details

* added content to the view

* added enable encryption alert

* updated preview tests and the UI

* removed wrong plists committed by mistake

* pr suggestions
2024-12-13 18:29:17 +01:00