663 Commits

Author SHA1 Message Date
Stefan Ceriu 46f49af930 Bump the SDK to v25.06.25; adopt the new optional RoomInfo joinRule and isPublic. 2025-06-25 17:23:22 +03:00
Doug 374fb722c6 Fix media previews in private room notifications and pagination on upgraded rooms. 2025-06-24 20:12:20 +03:00
Stefan Ceriu 5ac6ec28d5 Adopt room info power levels (#4245)
* Use the newly RoomInfo published PowerLevels; update permissions at the same time as the room info and avoid unnecessary async calls.

* Introduce a RoomInfoProxyProtocol and associated mock and move away from mocked SDK RoomInfos

* Bump the SDK to v25.06.23

* Expose new non-throwing methods for checking one's own user permissions

* Fix the unit and preview tests (except the TimelineMediaPreviewDetails for which simplified snapshots were generated)

* Converge on one single implementation for computing a room's avatar.

* Fix more unit tests

* Fix the TimelineMediaPreviewDetailsView snapshot tests

This reverts commit 9b6c819e611ad2fa3de2c34a4a7aa556fc9faadd.

---------

Co-authored-by: Doug <douglase@element.io>
2025-06-24 17:48:00 +01:00
Stefan Ceriu f522e15dac Adopt the lastest SDK APIs and refactor how we deal with user permissions.
This patch introduces a new RoomPowerLevelsProxy and its associated mock and adopts newer Rust APIs to make working with user power levels and permissions easier.
2025-06-20 18:10:45 +03:00
Stefan Ceriu daf4aa9239 Move all Introspect VersionPredicates into Compound to have them all in the same place. 2025-06-19 15:06:16 +03:00
Stefan Ceriu 7ed806535a Bump Version to v2.2.0 2025-06-18 19:50:06 +03:00
Stefan Ceriu 5c320e02e6 Bump Posthog to v3.27.0 2025-06-18 19:50:06 +03:00
Stefan Ceriu eedccef50e Bump Kingfisher to v8.3.2 2025-06-18 19:50:06 +03:00
Stefan Ceriu 133fb4c4fb Bump DeviceKit to v5.6.0 2025-06-18 19:50:06 +03:00
Stefan Ceriu da11755f3d Bump Swift Algorithms to v1.2.1 and Collections to 1.2.0 2025-06-18 19:50:06 +03:00
Stefan Ceriu 0eb8b1ecae Bump AnalyticsEvents to v0.29.2 2025-06-18 19:50:06 +03:00
Stefan Ceriu effd805901 Bump Sentry to v8.52.1 2025-06-18 19:50:06 +03:00
Doug 6d2fdb81e4 Update the SDK. (#4220)
* Update the SDK.

* Remove unnecessary function from the AppHooks protocol.
2025-06-18 12:01:23 +01:00
Stefan Ceriu b605717cfc Bump Compound and prevent Introspect from breaking on newer OS versions. 2025-06-16 12:56:29 +03:00
Stefan Ceriu eaf14eaaac Bump the SDK to v25.06.13 and add thread support to the ComposerDraftService 2025-06-13 16:56:13 +03:00
Stefan Ceriu 5315f962c6 Render the number of thread replies on the thread summary timeline view. 2025-06-12 16:54:53 +03:00
Stefan Ceriu f66d654820 Allow sending locations within threads
This patch implements support for sending locations within threads by following a similar behavior to the other screens: pass the thread root between the various state machine states until the action is finally invoked.
2025-06-12 16:54:53 +03:00
Mauro Romito 2863466755 update SDK to 25.06.11 2025-06-11 11:33:08 +02:00
Stefan Ceriu 09779a4e12 Bump the RustSDK to v25.06.10 2025-06-10 15:09:20 +03:00
Mauro Romito cc8f6bb44c updated EC to 0.12.2 2025-06-06 10:50:16 +02:00
Stefan Ceriu 1f52546fc8 Adopt the new deduplicate room versions room list filter. 2025-05-30 16:40:15 +03:00
Mauro aef91b5bc9 Handle media previews and invite avatars through the account data (#4142)
* added account data media display policy handling to NSE

* pr suggestions

* update compound

* code improvement
2025-05-28 19:51:34 +02:00
Mauro Romito 256292c5a9 updated ec and sentry 2025-05-28 17:08:23 +02:00
Mauro Romito 9a9bdcbdc3 update SDK to 25.05.27 2025-05-27 18:35:19 +02:00
Stefan Ceriu f9b3281172 Bump the SDK to v25.05.26-2 and update the breaking changes following the RoomListItem removal 2025-05-26 18:11:24 +03:00
Stefan Ceriu ae42540ec0 Bump the RustSDK to v25.05.26 and handle breaking changes
- the new sentry integration will be handled in #4145
2025-05-26 13:22:57 +03:00
Stefan Ceriu 909aa086f2 Bump the SDK to 25.05.21 and adopt the new way of dealing with timelines and delegates.
The room list items no longer hold any timeline instances and they can now be created through the normal `room.timelineWithConfiguration` mechanism.
This also means that we can move the UTD hook away from the sync service and into the client itself but setting it is now fallible as it can only be set once.
2025-05-22 18:14:55 +03:00
Mauro Romito 693d6130ad updated the SDK to 25.05.19 2025-05-19 16:34:37 +02:00
Mauro Romito 4f4b4b236d using stable 1.18.3 snapshot testing 2025-05-19 15:48:51 +02:00
Doug f5089e8d81 Update the SDK. 2025-05-16 09:58:05 +03:00
Doug 876618d557 Add support for Account Provisioning links. (#4108)
* Add support for account provisioning links and route them to the authentication flow.

* Use the provisioning parameters to configure the authentication flow.

* Add UI tests for the provisioned authentication flow.

* Record new preview snapshots.

* Add unit tests.

* Make the domain configurable in the app settings.

* Use the loginHint in the login screen too.
2025-05-12 13:28:34 +01:00
Doug d47d1345cd Update the SDK. (#4100) 2025-05-07 15:31:15 +01:00
Mauro Romito c333e264e3 update SDK to 25.04.30 2025-04-30 12:33:20 +02:00
Mauro Romito 0f53ad6724 updated SDK and improved report flow
the report flow is now based on the matrix version and the new one will only be used if the SDK checks if the server supports it.
2025-04-30 11:41:19 +02:00
Mauro 4179f56633 support for UI tests on Xcode 16.3 2025-04-17 15:18:37 +02:00
Mauro 85a7172986 Xcode16.3 support (#4029)
* Xcode16.3 support + updated unit and preview test
2025-04-16 19:12:31 +02:00
Stefan Ceriu 806d676299 Introduce a TimelineItemThreadSummary object (#4032)
* Introduce a `TimelineItemThreadSummary` object to hold details about threads starting from that particular item

This patch introduces a thread summary object that will be available on main timeline messages that are the root for a given thread.
It currently provides the latest message content and sender for that thread but it will grow to provide info on the number of replies, unreads etc.

It also add a new UI component called `TimelineThreadSummaryView` that makes use of this data and is in turn used by the bubbled styler to render it in the timeline.

The rest of the PR is about refactoring on the `RoomTimelineItemFactory` so that replies and thread summaries use similar paths and builders.

* Add a feature flag for threads

* Address PR comments

* Converge on single implementation for message previews
2025-04-16 16:19:29 +03:00
Doug 5b0038563d Add the new emoji from iOS 18.4 to the reaction picker. (#4023)
As we're still running tests on 18.1 the snapshots look slightly wrong but it's fine when running on 18.4.
2025-04-14 14:35:58 +01:00
Mauro Romito 9d53b29902 sdk: update to 25.04.14 2025-04-14 14:15:42 +02:00
Doug a5d94a0219 Adopt the new start chat button design. (#4013)
* Update compound and handle plain to tertiary/textLink button style updates.

* Update the start chat button to use the right icon/style.

* Update preview snapshots.

* Fix remaining snapshots.
2025-04-11 17:09:57 +01:00
Stefan Ceriu 83136af7c4 Bump the SDK and adopt the new MsgLike timeline item types (#4000)
* Bump the RustSDK to v25.04.09

* Adopt new MsgLike based timeline item structure.

* Move the `replyDetails` and `isThreaded` to the `RoomTimelineItemProperties`

* Restructure the TimelineItemFactory

* Fix line length warning

* Rename `msgLikeContent` to `messageLikeContent` wherever possible.

* Move the `EventTimelineItem` mocks to the SDK mocks folder.
2025-04-10 14:04:16 +03:00
Stefan Ceriu c9dc7e63c5 Bump the RustSDK to v25.04.08, fix breaking changes 2025-04-08 12:23:37 +03:00
Stefan Ceriu 62636d8378 Bump the RustSDK to v25.04.02 2025-04-03 18:08:34 +03:00
Mauro Romito 620616da63 updated EC to 0.9.0 2025-04-01 16:34:41 +02:00
Stefan Ceriu 901c833c40 Bump the RustSDK to v25.03.31
- adopt new async throwing methods
- use the sdk side TimelineStart virtual timeline item
- remove async from `directRoomForUserID` as it's not async on the rust side
- remove async from `retryDecryption` as it's spawning not blocking on the rust side
2025-04-01 13:12:29 +03:00
Mauro Romito 96abaf7226 fix: update compound to fix pickers and toggles
in list forms
2025-03-28 10:12:18 +01:00
Mauro Romito 98a95342d0 EC update and improvements
Use .startCall intent, and always pass rageshakeURL to the widget

Updated EC to 0.9.0-rc.4

rageshakeURL is now a parameter
2025-03-26 13:13:28 +01:00
Mauro 60024c78eb Embed element call (#3939)
* it works but only with the baseURL for now

* works but strings are not referenced properly

and we are using a dummy config.json which maybe is not required at all?

* test with EmbeddedElementCall repo

* updated the version

* ignore our own package

* updated version

removed using EC through the well known URL

* fix for remote URL overriding

* updated version

* fix for microphone and camera using local URL

* better solution

* Use version 0.9.0-release-test.3

* fix project

* removed workaround for emebedded EC url generation

* updated EC

* pr suggestions

* fix

* removed unnecessary configuration flag

---------

Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
2025-03-25 16:14:23 +00:00
Mauro Romito cfd4392837 updated the SDK to 25.03.24 2025-03-25 12:17:11 +01:00
Doug a142ce43af Add developer options for Rust's Trace Log Packs. (#3929)
* Add support for configuring log packs.

* Update call widget parameters.

* Update the SDK.
2025-03-21 19:00:13 +00:00