Commit Graph

2625 Commits

Author SHA1 Message Date
Doug d195e603c9 RoomTimeline… refactor (drop the Room). (#3728)
* Add the timeline controller factory to the timeline view model.

In preparation for building a timeline to swipe through media in QuickLook.

* Refactor RoomTimelineControllerFactory.

* Refactor RoomTimelineController.

* Refactor RoomTimelineProvider.
2025-02-03 14:14:01 +00:00
Stefan Ceriu 9df5a8fddb Fix flakey room member details screen snapshot test
- needs to wait for the call button to appear i.e. dmRoomID
2025-02-03 12:41:24 +02:00
ElementRobot d7ac9e9b3a Translations update (#3727) 2025-02-03 08:47:29 +00:00
Doug 6cd583d904 Revert back to UIKit for the presentation of the timeline media preview. (#3719)
* Revert back to UIKit for the presentation of the timeline media preview.

* Fix a presentation issue where the media is clipped until the animation finishes.

* Workaround for the preview controller replacing the info button when swiping.

* Use a self-sizing detent on the media info sheet.
2025-01-31 17:28:14 +00:00
Doug ef340fb70f Fix missing user ID. (#3725) 2025-01-31 16:59:06 +00:00
Element CI 342f25296d updated the notification string 2025-01-31 17:28:25 +01:00
Stefan Ceriu 97069850f5 Ensure multiple mandatory verification flows can be ran consecutively (e.g. following encryption resets) (#3722)
* Ensure multiple mandatory verification flows can be ran consecutively (e.g. following encryption resets)

* Disabled the back button on the verification screen only when verified and waiting for the security state publisher
2025-01-31 17:31:21 +02:00
Element CI 4856ffd3b2 Prepare next release 2025-01-31 07:00:01 -08:00
Mauro 5cffad937e Fastlane calendar versioning check and increase (#3721)
* update fastfile

* original comment

---------

Co-authored-by: Element CI <ci@element.io>
2025-01-31 13:34:25 +01:00
Mauro d5fb72c16c Do not handle offline mode yet (#3715)
* do not handle offline mode yet

* fix brew

* updated sdk
2025-01-31 11:23:38 +00:00
Stefan Ceriu 63b819e125 Disable continueAfterFailure for the AppLock UI tests 2025-01-31 11:31:31 +02:00
Stefan Ceriu 59cc9c27ec Attempt to fix the every flakey app lock setup test
We noticed that confirming the PIN will automatically hide the keyboard which makes the whole screen shift down while attempting to press the allow button. We also see an `App animations complete notification not received, will attempt to continue.` warning which seems to point to the same issue.
2025-01-29 17:31:03 +02:00
Doug d412c10352 Detect the timeline start/end when swiping through media files. (#3714) 2025-01-29 15:07:23 +00:00
Stefan Ceriu df997ad251 Fix flakey user indicator controller tests; switch them over to the deferred fulfillment. 2025-01-28 12:55:37 +02:00
Stefan Ceriu 2e57348bdd Fix wrong room roles and permissions screen UI snapshots. 2025-01-28 12:55:37 +02:00
Stefan Ceriu d585e208a1 Bump the RustSDK to 25.01.27, adopt the new emoji boosting API. (#3708)
* Bump the RustSDK to v27.01.22, adopt the new emoji boosting API.

* SDK version 25.01.22 😅

---------

Co-authored-by: Doug <douglase@element.io>
2025-01-27 17:49:44 +00:00
ElementRobot fa72e5e4b6 Translations update (#3709)
Co-authored-by: Velin92 <34335419+Velin92@users.noreply.github.com>
2025-01-27 17:37:24 +00:00
Doug c6338064b6 Media Browser: Listen to the timeline in the preview screen (#3707)
* Listen to the timeline to load more items in the media preview screen.

* Fix the view model tests.

* Fix tests
2025-01-27 16:22:49 +00:00
Doug b477a32d2e Remove unused/redundant assets. (#3702)
* Remove unused image assets.

* Remove unused/redundant colour assets.
2025-01-27 11:44:39 +00:00
Doug 62611be006 Show a blank topic as removed. (#3706) 2025-01-27 11:44:21 +00:00
ElementRobot 13a404560d Translations update (#3704)
* Translations update

* Update snapshots
2025-01-27 10:12:39 +00:00
Doug 381fd659bb Switch to CalVer (manually). (#3705) 2025-01-27 09:39:09 +00:00
Doug a70189d318 Make sure the Recovery Key option is shown on the IdentityConfirmationScreen when available. (#3699)
There was a race condition where 2 different states could be processed at the same time.

* Fix unit test
The view model wasn't stored, so relying the current value publisher didn't have time to fire before deinit.
2025-01-23 12:39:53 +00:00
Stefan Ceriu 88e63b297e Bump the RustSDK to v25.01.22 and use the new timeline building API 2025-01-23 08:55:00 +02:00
Mauro 3162bf7dcc Better handling for editing alias in case of different HS (#3695)
* better handling for aliases from different HS

* insert the alias at the top

* removing the old homeserver alias

* code improvement

* always remove the old canonical alias found on the server if exists

* added extensive testing for all the

possible cases on how the save is handled given the various context of the existing room alias
2025-01-22 17:33:43 +00:00
Mauro 48e530fec9 DM Design Tweaks (#3693)
* dm design tweaks

* adding equatable conformance

* topic will now be shown in DMs

* code suggestion

* updated details

* better check

* code improvement
2025-01-22 13:32:39 +00:00
Doug f194285250 Add MXLog.dev for faster print debugging. (#3694)
* Add MXLog.dev for easier print debugging.

* Remove the unused context parameter on MXLog.
2025-01-22 09:18:12 +00:00
Doug 909ee4abf2 Media browser tweaks (#3692)
* Move the media actions from the bottom bar into the details sheet.

* Allow the media type picker to fill the width of the screen.
2025-01-21 17:00:04 +00:00
Stefan Ceriu 55e399aaf7 Replace ImageMagick with a custom tool written in swift. 2025-01-21 16:25:29 +02:00
Stefan Ceriu 1de8c1f4a2 Setup an app variants folder and move the nightly and alpha build configs to it. 2025-01-21 16:25:29 +02:00
Mauro 19c14d5ef6 Possible fix for the join room screen not updating (#3690)
* possible fix

* comment improved

* better fix
2025-01-21 13:48:43 +00:00
Stefan Ceriu 8577f53613 Refactor the JoinRoom screen to take advantage of newer APIs and support more joinRule/membership combinations (i.e. invite required, restricted, banned) (#3685)
- expose the full RoomPreview and RoomMembershipDetails through their own proxies
- implement standard mocks for all the different combinations
- converge on a single room info provider
- rebuild all the previews
- prioritise the preview data over the room one.
2025-01-20 19:07:11 +02:00
Valere f20847f62b Warn and block sending on verification violation (#3679)
* feat(crypto): Warn and block sending on verification violation

* fixup: Fix ComposerToolbar previews

* fixup! add ComposerToolBarViewModelTests for canSend

* add new preview tests for verification violations

* Use `deferFulfillment`s in the unit tests.

---------

Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2025-01-20 18:29:34 +02:00
Stefan Ceriu 0fd8df52ab Improve how alias settings are handled, add unit tests (#3686) 2025-01-20 15:43:47 +02:00
Stefan Ceriu 13e66062ba Fix flakey RoomMemberDetailsScreen preview test.
- was missing sometimes missing the call button because we weren't waiting for the `dmRoomID` resolution
2025-01-20 12:11:32 +02:00
ElementRobot 5a4c8a4034 Translations update (#3687)
Co-authored-by: pixlwave <6060466+pixlwave@users.noreply.github.com>
2025-01-20 09:47:10 +00:00
Stefan Ceriu 1af5a4ae09 Update CONTRIBUTING.md 2025-01-16 09:03:00 +02:00
Stefan Ceriu c29175d1f9 Support double-length pseudlanguage in fallback translations and update snapshots for en-us. 2025-01-15 14:59:54 +02:00
Stefan Ceriu 0bcc59ae0a Bump the RustSDK to v25.01.15 and fix (most) concurrency sendability warnings in the generated mocks. 2025-01-15 14:59:54 +02:00
Mauro e3ad925285 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
pixlwave cfb01d61a0 Translations update 2025-01-13 08:24:32 +02:00
Stefan Ceriu ab334e90af Bump the SDK to v25.01.10-2, fix breaking API changes around sending media and mentions 2025-01-10 19:09:52 +02:00
Stefan Ceriu 57b85d2650 Move tracing configuration to the rust side. 2025-01-10 19:09:52 +02:00
Stefan Ceriu 2671d90bc1 Simplify how to we handle background task expirations. (#3670) 2025-01-10 16:43:39 +02:00
Stefan Ceriu fc719d9aa6 Delay snapshotting various flakey UI tests
- as per https://app.codecov.io/gh/element-hq/element-x-ios/tests/develop?historicalTrend=INTERVAL_30_DAY&parameter=FAILED_TESTS
2025-01-08 12:35:58 +02:00
Doug 082b4b260c Include missing gems until Fastlane is updated for Ruby 3.4 (#3663) 2025-01-06 16:17:12 +00:00
Doug 7ca44a043b Add the event cache to the Rust tracing configuration. (#3662) 2025-01-06 12:58:41 +00:00
Doug 307a593c7e Ignore Compound and RTE from license acknowledgements. (#3661)
These all come from element-hq so aren't third-party licenses to us.
2025-01-06 11:36:20 +00:00
ElementRobot 75c8507065 Translations update (#3649)
* Translations update

* Fix build errors.

---------

Co-authored-by: pixlwave <6060466+pixlwave@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2025-01-06 10:51:02 +00:00
manuroe 3950cac085 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