Commit Graph

90 Commits

Author SHA1 Message Date
Doug
74511e0570 Update the SDK.
Handles changes that removed support for the sliding sync proxy.
2025-02-18 11:55:20 +00:00
Mauro
63d059b342 updated the SDK (#3737) 2025-02-04 16:57:39 +00: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
a297643443 Bump the RustSDK to v1.0.79; add a feature flag for the new rust side ClientBuilder::useEventCachePersistentStorage 2024-12-10 18:19:31 +02:00
Stefan Ceriu
51751606ca Adopt various rust side Timeline API additions (#3423)
* Adopt new reaction toggling API introduced in matrix-org/matrix-rust-sdk/pull/4127

* Adopt the changes introduced in matrix-org/matrix-rust-sdk/pull/4111: use the new `TimelineUniqueId` type instead of `String` for unique timeline identifiers.

* Bump the RustSDK to v1.0.58.

* Fix unit tests
2024-10-16 19:08:34 +03:00
Stefan Ceriu
45d59c57d6 Bump the RustSDK to v1.0.53: adopt latest record based timeline item APIs (#3356) 2024-10-01 18:50:11 +03:00
Doug
e95fb7c27e Move the core logic in LoginScreenCoordinator into the ViewModel. (#3348) 2024-10-01 13:09:45 +01:00
Doug
aec4e3e8ca Selecting a server that doesn't support login now fails instead of letting you continue to a failure later. (#3342)
* Fail configuration of the authentication service if the homeserver doesn't support login.

* Move the ServerSelectionCoordinator logic into the ViewModel.

- Handle the new login alert.
- Add more tests
2024-09-27 13:58:05 +01:00
Valere
5516743886 crypto: rename invisible crypto flag to deviceIsolationMode (#3331) 2024-09-26 12:24:46 +01:00
Doug
94f5879639 Configure the AuthenticationService later now that we have 2 flows on the start screen. (#3316)
* Don't query the homeserver until confirming it (or selecting a different one).

* Setup the infrastructure to test AuthenticationService.

Implement basic tests for configuration & password login.

* Use the real AuthenticationService with a mock Client in all of the tests.

* Add tests for the ServerConfirmationScreenViewModel.

* Remove redundant view state and test for it.
2024-09-25 14:40:18 +01:00
Valere
a9fddb5dbb crypto: Add configuration flag to enable invisible crypto (#3247) 2024-09-18 16:30:45 +01:00
Doug
700b740a48 Add a WebRegistrationScreen (not included in the flow yet). (#3281) 2024-09-16 11:03:29 +01:00
Doug
d1495f3178 Make the SessionDirectories type responsible for cleaning up data. (#3261) 2024-09-11 14:32:03 +01:00
Stefan Ceriu
5c9e13b200 Fixes #3147 - Remove the sliding sync proxy wait list 2024-09-09 12:41:28 +03:00
Stefan Ceriu
89eae00479 Switch license to AGPL (#3237)
* Switch license file to AGPL

* Update file copyright headers

* Update the default project file header
2024-09-06 16:34:30 +03:00
Doug
a3e36269a4 SonarCloud: Remove redundant rethrow. 2024-08-30 14:45:54 +03:00
Doug
b171612ab7 Adopt sliding sync discovery for authentication. 2024-08-30 14:45:54 +03:00
Doug
a3e66d3e7e Update the SDK (#3196)
* Update the SDK.

* Fix API breaks on send failures and propagate the new type.

* Handle new SDK ShieldState.

* Set up the ClientBuilder's `cachePath` option.

* Delete the cacheDirectory during logout/clearCache.

* Add unit tests for RestorationToken decoding and SessionDirectories generation.
2024-08-27 11:06:26 +01:00
Doug
16e5c3e1a5 Rotate the session directory each time a new client is built for authentication. 2024-08-12 12:23:29 +01:00
Doug
94c9a04474 Automatically sign out when toggling the SSS feature flag. (#3071) 2024-07-23 11:55:51 +01:00
Doug
a141532355 Add a feature flag for Simplified Sliding Sync. (#3057)
* Disable SSS when logging out.

* Bump the SDK.
2024-07-18 10:16:51 +01:00
Doug
de07f441f0 Add a ClientBuilder hook. (#3056) 2024-07-18 09:47:37 +01:00
Doug
99309ddfd2 Use a Client in AuthenticationService now that the Rust one has been removed. (#2954)
* Replace Rust's Authentication service by building a Client.

* Drop the Proxy from AuthenticationServiceProxy[Protocol].

* Make sure to call abortOIDCLogin.

* Centralise common ClientBuilder code.

* Update the SDK.
2024-06-24 15:05:00 +01:00
Doug
3f57668f56 Adopt Rust's new sessionPath that replaces the basePath (#2903) 2024-06-06 18:35:57 +01:00
Stefan Ceriu
425f4bd45f Fixes #2842, fixes #2841 - Adopt new message sending queue API
- automatically retry failed requests as soon as the network is availble again
- remove manual retry options
2024-06-06 12:59:03 +03:00
Mauro
e09e34aa61 QR Code Login Flow (#2767)
Co-authored-by: Hugh Nimmo-Smith <hughns@users.noreply.github.com>
Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
2024-05-29 17:07:17 +02:00
Stefan Ceriu
d922d5ef09 Replace the old MockUserSession with the generated UserSessionMock 2024-05-27 17:05:01 +03:00
Doug
5a493d74fc Update the SDK. (#2776)
Handle async FFI changes.

Fix flakey unit test.
2024-05-03 12:00:05 +01:00
Doug
a62d1d6e48 Always encrypt the db for new users. (#2692) 2024-04-12 18:00:49 +01:00
Stefan Ceriu
b4f653d6d8 element-hq/element-x-ios/issues/2670 - Show invites as part of the room list 2024-04-09 18:18:11 +03:00
Stefan Ceriu
56e124d88f Replace the existing MockClientProxy with a generated one + special configuration options 2024-02-28 17:18:01 +02:00
Doug
5175f6e94b Add a couple more error messages during authentication. (#2497)
* Add copy for error when signing in with refresh tokens enabled.

* Show an error when a server's well-known file is invalid.

* Changelog.

* Fix wrong alert.
2024-02-27 08:48:21 +00:00
Mauro
dc14accbef Configure SDK to use the global/OS proxy (#2493) 2024-02-21 15:17:23 +01:00
Doug
c67a75996c Bump the SDK to v1.1.40. (#2473) 2024-02-16 11:40:13 +00:00
Mauro
316d1c13fb Failure when finding a refresh token in a non OIDC login (#2377)
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2024-01-25 12:35:26 +00:00
Doug
63ff979057 Enable database encryption for new logins on Nightly/PR builds. (#2328)
- Slightly reworks where the pusher client ID is generated.
2024-01-12 16:45:59 +00:00
Nicolas Mauri
b191f80dea Prevent multiple conversion of the same voice message audio file. (#1887) 2023-10-13 09:48:11 +00:00
Doug
7cbb064464 Enable OIDC token refresh in the NSE. (#1711)
Update the SDK and handle API changes.
2023-09-15 09:01:09 +00:00
Doug
95e6b294a8 Add missing contacts field in OIDC configuration. (#1662) 2023-09-08 16:28:10 +00:00
Doug
c284f43e5b Add app logo to OIDC and fix policy URL (#1590) 2023-08-30 09:39:33 +00:00
Doug
98bfb2ead4 Enable OIDC support (#1541)
Notification content is bypassed for now.
2023-08-22 15:53:27 +01:00
Alfonso Grillo
104629b72f Conform URL to ExpressibleByStringLiteral (#1214) 2023-06-29 13:47:04 +00:00
Stefan Ceriu
abe1df2524 Removed unused swipe gesture (+3 squashed commits)
Squashed commits:
[d64bb3bb] Stop using the ServiceLocator directly in the ScreenTrackerViewModifier
[37c46ab9] Rename Analytics to AnalyticsService
[8852a371] #920 - Cleanup ServiceLocator usages
2023-06-28 11:33:41 +03:00
Doug
09cccc6754 Fix missing user agent during login and the first session. (#1181) 2023-06-27 14:41:57 +00:00
Doug
b8ec1096ba Handle waiting list error. (#1165) 2023-06-26 18:26:20 +01:00
Doug
7c4d0631df Server Confirmation Screen (#959)
* Add ServerConfirmationScreen.
2023-05-30 10:31:18 +01:00
Doug
133fccc812 Remove AppAuth and prepare for Rust OIDC. (#870) 2023-05-11 16:46:36 +01:00
Stefan Ceriu
94cfaeeaa0 Structured logging (#831)
* Structured logging support

* Bump the SDK, fix breaking changes

* Enabled more logging of timeline diffs

* Keep only source file last path components in logs

* Bump the SDK, tweaks following code review
2023-04-25 14:48:20 +03:00
Stefan Ceriu
0765788e9c Bump the RustSDK to v1.0.41 (#654)
* Handle breaking changes.
* Fix a couple of warnings
* Bump the SDK to v1.0.41
2023-02-28 18:03:19 +02:00
Doug
bd1e532d0e Add SwiftFormat wraparguments (#579)
Matches the wrapparameters rule, seems it was missed.
2023-02-15 08:53:10 +00:00