3164 Commits

Author SHA1 Message Date
Stefan Ceriu 9c28a69ccf Be more lenient with the power levels as they can still be missing at the time the various screens are created e.g. after accepting an invite.
The correct solution is to subscribe to update and update the UI accordingly when receiving them.
2025-06-26 18:57:46 +03:00
Mauro Romito 37cbf733d4 EC: handle back navigation from the webview
EC: remove native header

updated element call to 0.13.0-rc1
2025-06-26 16:05:26 +02:00
Mauro Romito d8074d682e improved the copy of the accessibility label 2025-06-26 15:53:05 +02:00
Mauro Romito e0c2780081 a11y added a label to the remove all filters button 2025-06-26 15:53:05 +02:00
Mauro Romito 0eac918715 voice over focuses title when it changes in session verification view 2025-06-26 15:17:15 +02:00
Doug 373fa205ba Use mock log files for the BugReportScreenViewModelTests. (#4257)
The array could be empty if a previous test deleted the logs.
2025-06-26 12:36:13 +01:00
Mauro Romito 4b05a6194c a11y improvement for removing a selected user 2025-06-26 13:21:38 +02:00
Mauro Romito a562d239db a11y poll improvements 2025-06-26 12:52:36 +02:00
Mauro Romito d2b38a4cbe Used the close formatting option a11y label 2025-06-26 12:35:55 +02:00
Mauro Romito e075c90bee add view avatar a11y label 2025-06-26 12:35:43 +02:00
Stefan Ceriu bfd97cd560 Make the RoomInfo isPrivate field optional and handle it accordingly. 2025-06-25 17:23:22 +03:00
Stefan Ceriu 11c7d07e76 Bump the SDK to v25.06.25-2 which enables (re)storing the sliding sync position in between app runs. 2025-06-25 17:23:22 +03:00
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
Stefan Ceriu 8dc389cd54 Switch to using the power levels for retrieving a user's role. 2025-06-25 17:23:22 +03:00
Stefan Ceriu de723853e3 Make the room power levels optional as they can be missing depending on what state events are requested 2025-06-25 17:23:22 +03:00
Stefan Ceriu c7ff6c019d Adopt new canOwnUser* power level methods instead of the throwing ones. 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
Doug 0f9d700c99 Fix a crash when attempting to send a bug report with excessively large logs. (#4243)
* Alert the user when there are excessively large log files.
2025-06-24 09:47:20 +01:00
Doug 5b3e045e3c Expose isLiveKitRTCSupported on the ClientProxy. (#4238) 2025-06-23 11:21:36 +01:00
Mauro 0c8a401b4d EC Timeout if it doesn't respond after 30 seconds (#4237)
* basic implementation

* using a decodable struct to interpret the widget message

* small code refactor/improvement
2025-06-20 18:21:31 +02:00
Stefan Ceriu cbf405a67e Better integrate RoomPowerLevelsProxyMock's own Configuration struct. 2025-06-20 18:10:45 +03: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
Mauro Romito c8fc4174a6 pr suggestion 2025-06-20 10:07:58 +02:00
Mauro Romito ec2a30c492 show alert when trying to accept invalid invites 2025-06-20 10:07:58 +02: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 f4333ba683 Fix MediaTimeline screen header iOS 26 crash, update remaining version predicates. 2025-06-19 14:29:49 +03:00
Stefan Ceriu 087a07c01b Fix thread summaries being shown when the thread feature flag was disabled. 2025-06-19 14:01:06 +03:00
Stefan Ceriu ccb0fc7de0 Fixes #4222 - Hide timeline item actions that the user's power level does not allow 2025-06-18 17:39:45 +03:00
Doug 2d926f446a Refactor reportUrl to reportURL. 2025-06-18 14:32:26 +01:00
Doug d2562b1b7e Don't check the report URL's contents before clearing the lastCrashEventID.
If we reached it this far, the server has indicated that the submission was successful.
2025-06-18 14:32:26 +01:00
Nicolas Buquet dd20823240 Make BugReportService reportUrl optional (#4195) 2025-06-18 14:32:26 +01: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
Mauro Romito 5c4fc49763 pr suggestion: use computed var for scaleY 2025-06-18 11:47:56 +02:00
Mauro Romito 5e342a91dd unflip timeline table view in voice over mode only 2025-06-18 11:47:56 +02:00
Mauro Romito 12e55d6c28 improved reactions a11y 2025-06-18 11:23:45 +02:00
Stefan Ceriu 28038adc0d Fixes #4204, #4180 - Fix OS 26 crashes when not running a development build. 2025-06-18 11:54:00 +03:00
Mauro Romito 5b6f4a30f0 updated strings 2025-06-17 12:56:19 +02:00
Mauro Romito 6c5813b534 improved a11y in CollapsibleRoomTimelineView 2025-06-17 12:56:19 +02:00
Mauro Romito 7e801c3e58 focus voice over automatically when focussing a timeline event 2025-06-17 11:58:07 +02:00
Mauro Romito 670bb3a2f3 improved the accessibility labels for the view
also added copies for the section headers, and fixes an issue where the move action voice over was not reading the option
2025-06-16 11:31:17 +02:00
Stefan Ceriu 93cd1401cf Fix preview test crashes when accessing misconfigured draft service mocks 2025-06-13 17:42:40 +03:00
Stefan Ceriu 6fc6df9375 Refactor how drafts are handled on a coordinator level and add support for them on thread timelines. 2025-06-13 16:56:13 +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
Mauro Romito f0d3e85c47 add state to the accessibility label of rte formatting buttons 2025-06-12 17:28:12 +02: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
Stefan Ceriu 753ee2f11d Fixes #4180 - Prevent room header autolayout crashes on iOS 26. 2025-06-12 11:23:04 +03:00
Stefan Ceriu 0f3d0eb34f Fixes #4185 - Correct the bug report service submission URL after updating how secrets are configured.
- introduced in https://github.com/element-hq/element-x-ios/pull/4145/commits/54f4aeda4fee11f01028944668f01502f63abc35
2025-06-11 12:33:49 +03:00
Richard van der Hoff 394eb008ab Add a developer option for history sharing on invite
Adds a new developer flag, enabling our experimental support for MSC4268.
2025-06-11 11:24:29 +03:00