840 Commits

Author SHA1 Message Date
Stefan Ceriu
c79dbe85a0
Bump the RustSDK to v1.0.53: adopt latest record based timeline item APIs (#3356) 2024-10-01 18:50:11 +03:00
Doug
268d9f7479
Move the core logic in LoginScreenCoordinator into the ViewModel. (#3348) 2024-10-01 13:09:45 +01:00
Doug
17dfe1359a
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
Stefan Ceriu
dc6d7f2985
Integration test improvements (#3330)
* Send a message from integration tests and check that it doesn't show up in the app logs
* Increase photo library timeout

* Wait for image tapping to process

* Send a message using the rich text editor too

* Wait for the various pickers to finish loading

* Set all logs to `trace` in integration tests

* Close formatting options after sending the second message

* Make sure logs are actually sent to tracing and get redirected to the right file

* Switch from using a custom `trace` log configuration to the lowest level `TracingConfiguration` we support
2024-09-26 10:15:09 +03:00
Doug
a8dbda90d9
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
Doug
af8c16150b
Upgrade Kingfisher to fix a bug that prevented GIFs from being tapped. (#3326)
* Upgrade Kingfisher to fix a bug the prevented GIFs from being tapped.

https://github.com/onevcat/Kingfisher/issues/2295

* Fix tests.
2024-09-25 13:10:02 +01:00
Doug
6faa26eade
Add detection for latest devices. (#3327)
* Update various packages.
Notable changes:
- DeviceKit now detects iPad Pro (M4), iPad Air (M2) and iPhones 16.
- KZFileWatchers isn't updated but now has a tag to pin to.

* Try using a raw destination for tests.
To fix an issue where CI isn't finding iPhone 16 when it's clearly listed by simctl.
2024-09-25 10:01:21 +01:00
Element CI
f5001c8464 Prepare next release 2024-09-24 07:23:55 -07:00
Doug
c264e9e590
Use the UIColors directly instead of wrapping the SwiftUI Colors. (#3324) 2024-09-24 12:24:03 +01:00
Doug
d73681221d
Update the SDK. (#3323) 2024-09-24 11:33:34 +01:00
Doug
3514eba4a5 Split up the generated tests from the snapshotting code. 2024-09-23 16:25:49 +01:00
Doug
6818be1afc Update UI tests for Xcode 16. 2024-09-23 16:25:49 +01:00
Element CI
da6487e054 Prepare next release 2024-09-19 08:14:56 -07:00
Valere
f7d878bac6
crypto: Add configuration flag to enable invisible crypto (#3247) 2024-09-18 16:30:45 +01:00
Element CI
ac27951c93 Prepare next release 2024-09-18 03:33:20 -07:00
Mauro
16812e21ea
Bump SDK to 1.0.51 (#3298) 2024-09-18 11:38:43 +02:00
Doug
5625e78fc9
Add support for account deactivation when not using OIDC. (#3295) 2024-09-17 20:08:35 +01:00
Stefan Ceriu
8660a22b3e Bump the RustSDK to v1.0.50 2024-09-17 16:05:02 +03:00
Mauro
efe352c319
Added analytics for message pinning (#3284) 2024-09-17 10:02:26 +02:00
Doug
6cfe09b96d
Add a WebRegistrationScreen (not included in the flow yet). (#3281) 2024-09-16 11:03:29 +01:00
Element CI
7536771409 Prepare next release 2024-09-13 08:05:45 -07:00
Stefan Ceriu
ce83aec760 Bump the RustSDK to v1.0.48 2024-09-13 15:25:17 +03:00
Element CI
0e6a2594dd Prepare next release 2024-09-11 07:14:10 -07:00
Mauro
0d9d8f9fa4
Sdk v1.0.47 (#3265) 2024-09-11 15:55:15 +02:00
Mauro Romito
10fcb5575d version bump to 1.8.0 2024-09-11 13:24:34 +02:00
Stefan Ceriu
bef892451e
Add a banner that offers the user to transition to native sliding sync (#3252)
* Fixes #2508 - Offer user to transition to SSS

* Rename `HomeScreenBannerMode.shown` to `HomeScreenBannerMode.show`

* Generate and use preview tests for the migration banner

* Bump the RustSDK to v1.0.46

* Address PR review comment
2024-09-11 08:21:27 +03:00
Doug
539452394e
Add iOS 18 to the Introspect supported versions. (#3248) 2024-09-10 13:24:17 +01:00
Doug
cc4942fb78
Require acknowledgement to send to verified users who have unsigned devices or have changed their identity. (#3215)
* Refactor HeroImage style.

* Add a screen to resolve (crypto-related) timeline item send failures.

* Refactor send failures.

* Update the SDK.
2024-09-10 09:56:11 +01:00
Stefan Ceriu
2f6fea29f3
Replace Prefire with a very similar but simpler and more direct approach (#3232)
* Replace Prefire with a very similar but simpler and more direct approach

* Move PreviewTest snapshots to their new location (snapshotting default, mirrors UITests)

* Update acknowledgements

* Switch snapshot configuration extensions to a custom version

* Exclude snapshots from the PreviewTests target

* Fix acknowledgements

* Rename snapshotting preference keys

* Remove `skipPackagePluginValidation`
2024-09-09 15:07:41 +03:00
Stefan Ceriu
a0eafe26c3 Fixes #3147 - Remove the sliding sync proxy wait list 2024-09-09 12:41:28 +03:00
Stefan Ceriu
664e87fe87
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
Stefan Ceriu
dc85cb10ed Stop running and publishing performance metrics to gh-pages 2024-09-05 13:49:56 +03:00
Element CI
fbca83ba5f Prepare next release 2024-09-04 01:28:23 -07:00
Stefan Ceriu
7b03c23baa Bump the RustSDK to v1.0.44 2024-09-04 10:53:30 +03:00
Doug
342ad57ce7 Update the SDK. 2024-08-30 14:45:54 +03:00
Doug
4925884f6c Adopt sliding sync discovery for authentication. 2024-08-30 14:45:54 +03:00
Element CI
e439689b65 Prepare next release 2024-08-27 05:17:35 -07:00
Doug
812c5d5c61
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
Mauro
4eb1ed5d09
Pinned Events Timeline actions and differentiation (#3182) 2024-08-22 17:35:44 +02:00
Doug
304070e8cc
Use native video call picture in picture! (#3190)
* Use native video call picture in picture!

* Handle isSupported, isPossible and web view errors.

* Use new canEnterPip method.

* Hide a room's Call button when already joined to the call.

* Tweak feature flag description.

* PR comments.
2024-08-21 17:48:57 +01:00
Stefan Ceriu
4e3ab9c04a Bump the SDK to v1.0.40 2024-08-21 18:02:40 +03:00
Stefan Ceriu
e281a3f242 Introduce a new RoomProxyType and treat rooms differently based on their membership state 2024-08-21 12:24:20 +03:00
Doug
e0ba9925e7
Remove GenericCallLinkCoordinator, merging it into CallScreen. (#3181)
* Remove incorrect message send call and fix typo.

* Add overlay coordinator presentation to the NavigationRootCoordinator.

* Remove GenericCallLinkCoordinator, merging it into CallScreen.

This will allow for picture in picture on call links when available.
2024-08-19 17:21:25 +01:00
Stefan Ceriu
ad13f644c5 Bump the SDK to v1.0.39 2024-08-15 18:24:31 +03:00
Stefan Ceriu
f89c3e54b4
Automatically try reloading failed images on network changes (#3170)
* Add the networkMonitor to the NSE and delete the old MockMediaLoader

* Generate a MediaLoaderMock through AutoMockable and use it in the MediaProviderTests

* Implement an ImageProvider mechanism that automatically tries reloading images when connectivity is established again and use it for LoadableImages

* Merge the ImageProvider protocol back into the MediaProvider

* Address PR review comments

* Provide a default sdk client request configuration

* Address tasks not automatically cancelling themselves when views get deallocated
2024-08-15 18:20:19 +03:00
Mauro
c71da91d54
PinnedBanner is now managed by the RoomScreenViewModel (#3163) 2024-08-14 12:38:10 +02:00
Doug
9f665d28f9 Update the SDK (with latest tweaks for Element Call). 2024-08-14 11:22:01 +01:00
Mauro
1ad361a6e8
RoomScreenViewModel is now TimelineViewModel (#3157)
Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2024-08-13 13:36:40 +02:00
Element CI
4519275559 Prepare next release 2024-08-13 03:55:02 -07:00
Stefan Ceriu
2fa7934a4a Bump the SDK to v1.0.37 2024-08-13 11:40:01 +03:00