2697 Commits

Author SHA1 Message Date
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.
nightly/1.9.11.818
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 nightly/1.9.11.817 nightly/1.9.11.816 2025-01-16 09:03:00 +02:00
Stefan Ceriu
c29175d1f9 Support double-length pseudlanguage in fallback translations and update snapshots for en-us. nightly/1.9.11.815 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 nightly/1.9.11.814 nightly/1.9.11.813 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 nightly/1.9.11.812 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
nightly/1.9.11.810 nightly/1.9.11.811
2025-01-08 12:35:58 +02:00
Doug
082b4b260c
Include missing gems until Fastlane is updated for Ruby 3.4 (#3663) nightly/1.9.11.808 nightly/1.9.11.807 nightly/1.9.11.809 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
manuroe
2ae96617e8 Update bug.yml
Mentionning iPhone X looks old those days.
nightly/1.9.11.796
2024-12-25 21:01:56 +02:00
Stefan Ceriu
4488202dac Fix encryption settings UI test snapshots 2024-12-25 21:00:48 +02:00
Stefan Ceriu
9a00b983c3 Bump the RustSDK to version 24.12.20 nightly/1.9.11.795 nightly/1.9.11.793 2024-12-20 16:22:03 +02:00
Doug
885a5b9f36
Design tweaks. (#3645)
* Update the background colour of the VisualList component.

* Update the recovery key field to match the designs.
2024-12-20 14:13:23 +00:00
Doug
b8106f36ba
Fix the overlapping scrollbars on macOS. (#3646) 2024-12-20 13:54:41 +00:00
Stefan Ceriu
536f01abbd
Retrofit deferFulfillment onto snapshot tests. (#3641)
* Retrofit `deferFulfillment` onto snapshot tests.

* Convert a bunch of preview tests to the new fulfillment publisher

* Convert more tests

* Remove unneeded delays from the remaining tests

* Remove snapshotting delay option.
2024-12-20 15:30:59 +02:00
Doug
365797c8b7
Autofocus emoji search and send the first result with the return key on macOS. (#3644)
* Autofocus emoji search and send the first result with the return key on macOS.

* Add an extra condition to make sure the user has entered a search string before sending.
2024-12-20 11:25:05 +00:00
Doug
888a61ace1
Media upload tweaks (#3643)
* Focus the media caption composer if a hardware keyboard is available
Not worrying about live connections, this screen is short lived.

* Fix a bug where you could hit the send button multiple times while waiting for the media to be converted.

* Begin processing media as soon as the media upload screen is shown.
2024-12-20 10:34:22 +00:00
Element CI
98c57b60d3 Prepare next release nightly/1.9.11.792 2024-12-19 06:59:50 -08:00
Doug
3aa7edc508
Enable the media browser feature 🖼️ (#3642)
* Overlay a progress indicator for downloads instead of using a toast indicator.

* Update the SDK.

* Remove the feature flag for the media browser.

* Remove the media captions feature flag too.

* Add unit test cases for download failure and swiping between items.

* Snapshots (with the media browser visible in the screen).
1.9.10
2024-12-19 14:15:31 +00:00
Stefan Ceriu
21a15936a9 Fix #3639 - Reorder timeline item menu options 2024-12-19 13:18:12 +02:00
Doug
e7cc807084
Add a fullscreen button to TimelineMediaPreviewScreen and hook up swiping through the timeline. (#3638)
* Add a fullscreen button to media previews - Not ideal but the gestures conflict with the preview controller.

* Don't un-flip the preview thumbnail until the preview has disappeared, and only do it on iOS 18.

* Add all of the loaded items for previewing in the preview controller.
nightly/1.9.10.791
2024-12-18 19:10:19 +00:00
Stefan Ceriu
435dfb8e46
Automatically retry decryptions in the active room when the app becomes active again just in case the NSE received keys we're not aware of (#3628) 2024-12-18 11:10:56 +02:00
Doug
2a865ce5bf
Implement the save action when previewing media. (#3630)
* Implement the save action on the media preview.

* Update Compound and use the correct icon.

Also fixes an icon that has been renamed.

* Update the add to photo library usage description to match the designs.

* PR comments.
nightly/1.9.10.790
2024-12-17 16:35:51 +00:00
Mauro
2b82b94500
updated sdk to 1.0.82 (#3631) 2024-12-17 14:42:24 +01:00
Mauro
1496d477a4
updated details design (#3626) 2024-12-17 11:50:01 +00:00
Doug
a16f169a92
Disable semantic commits from Renovate (#3629)
* Disable semantic commits from Renovate

* Add a Danger check for semantic commits.
2024-12-17 11:16:27 +00:00
Stefan Ceriu
598e604851 Fix state change commented by mistake and simplify snapshot test setup (+ a couple of warnings) 2024-12-17 11:06:33 +02:00
Valere
52463cdf8f feat(crypto): Support for new UtdCause for historical messages 2024-12-17 10:15:35 +02:00
Stefan Ceriu
61ad718007 Fix video item duration formatting nightly/1.9.10.789 2024-12-16 19:21:28 +02:00
Stefan Ceriu
60e94120cc Implement frequency tracking for frequently used emojis 2024-12-16 19:21:28 +02:00
Stefan Ceriu
e04c87445e Fix #3620 - Fix frequently used emojis, stop relying on Apple's keyboard values and store everything app side instead. 2024-12-16 19:21:28 +02:00
Stefan Ceriu
f9be39eb4f Fix the media gallery's empty state showing up at wrong times. 2024-12-16 19:21:28 +02:00
Doug
3a82b88859
Rework the presentation of the media browser quick look view to use SwiftUI. (#3619)
* Embed the media preview quick look inside a full screen cover

With a zoom transition on iOS 18.

* Use a the representable coordinator properly.

* Fix a bug with the toolbar appearance.

* Format

* Try prevent the zoom transition being upside down.

* Fix the snapshot test configuration.
2024-12-16 15:27:50 +00:00
Mauro
45a630dd85
Implement Knock Logic (#3573)
* WIP RequestToJoin struct

* implemented the logic to display the cells

* knock request banner accept flow

* mark all knocks as seen implemented

* details logic

* implemented accept, decline and ban in the list

* added a loader and modified the stacked view

of the banner

* pr suggestions

* updated naming and loading strings

* added the initial loading state

improved code and the tests

* updated a string that has changed

* code improvement

* tests for the room screen view model

* room details tests

and improved the knock requests tests for the room screen

* knock requests list tests

* added error state alerts with retry

* struct has been renamed on the sdk

so I renamed it also on the app side

* update SDK
2024-12-16 15:32:45 +01:00
renovate[bot]
016cdc687a
chore(deps): update dependency fastlane to v2.226.0 (#3621)
* chore(deps): update dependency fastlane to v2.226.0

* Actually update it 🙄

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2024-12-16 10:37:51 +00:00
pixlwave
0e46173aea Translations update 2024-12-16 09:51:26 +02:00
Stefan Ceriu
78aa0e3974 Add a comment on bubble background modifier default parameter values. nightly/1.9.10.788 2024-12-13 19:31:35 +02:00