* Add a LinkNewDeviceService that exposes the SDK's grant QR code login methods.
* Add a flow coordinator for linking a new device.
Changes the presentation too.
* Listen to call decline to stop ringing when declined from other device
* MSC4075 Use expirationTS to define the call ringing window
* Implement ElementCallService tests.
* Update acknowledgements.
* Only offer to verify if a cross-signed device is available
* Wait until we know which verification options are available before showing them.
---------
Co-authored-by: Hubert Chathi <hubertc@matrix.org>
Also removes an unused `parent` parameter that was missed when removing the parent name and includes some regenerated snapshots that were missed in the last PR.
* Use the via property on SpaceRoom.
* Fall back to the canonical alias as a space room name if needs be.
* Use SpaceRoom.isDirect for computing the name/avatar.
* Pass in the parent space as a workaround for no restricted join rules.
* Listen to call decline to stop ringing when declined from other device
* use proper swift naming convention for Id/ID
* fix Force unwrapping
* fix lint
* An approach without the custom publisher.
* review: correct naming convention
* review: revert some invisible char/tab changes
* add ref to the room proxy in the closure
---------
Co-authored-by: Doug <douglase@element.io>
* Add the JoinRoomScreen into the SpaceFlowCoordinator.
The screen needs further work to make the join work.
* Fix the tests completing the join flow with the right action.
* Add support for joining rooms from a space.
Doesn't yet handle the Join button 🤔
* Handle the join button for both rooms and spaces.
Also refactor more instances of spaceRoom to spaceRoomProxy.
* Revert "Address the real lifetime issue of the SDK's `Client` by making `Context.mediaProvider` weak. (#4466)"
This reverts commit b9d1558216.
* Better docs.
* Use the SDK's offline state to drive the offline indicator.
* Only use network reachability for restarting the sync loop, use the homeserver reachability for requests.
* Add a separate indicator to distinguish when the server is unreachable but the device is online.
* Space flow improvements
- Use a state machine to select a space.
- Add a SpaceFlowCoordinator for recursively presenting subspaces.
- Get the spaceRoomListProxy when tapping on the space so we can indicate failures.
- Fix the total room count in SpaceListScreen.
* Refactor spaceRoom → spaceRoomProxy.
* Add a UI test for the Spaces flow.
* Stop sending call notifications manually
The Element Call widget can now assume responsibility for sending them when you start a call.
* Bump Element Call embedded package to v0.14.0
* Delegate the sending of call notifications to Element Call
* Update the SDK.
* Use 'is' prefix for boolean
---------
Co-authored-by: Doug <douglase@element.io>
* restore permissions to creator and display them as owners in the list
* improved the code to use actually 5 roles in the app to distinguish a real creator from an owner
* update the sdk, and updated the power levels APIs
Revert "update the sdk, and updated the power levels APIs"
This reverts commit d3b291003d2b6fd6346ef7e445af4970fda62348.
x
* pr suggestions
Store encryption became mandatory in #2692
Rust's sessionPath replaced the legacy session directory in #2903
Native sliding sync migration resulted in new restoration tokens for new users in #3071 and later for all users by #3801.
* Fix a bug where some files sizes were sent as 0.
* Make FileManger.sizeForItem(at:) a UInt.
The docs specifically say that FileAttributeKey.size returns an unsigned long long so I have no idea why we were returning a Double here…
* Add the maxMediaUploadSize property on ClientProxy.
* Use the maxUploadSize to set a target video size and to show a file too big error.
* Refactor media upload parameter order.