Commit Graph

3355 Commits

Author SHA1 Message Date
Doug cb7d11fd13 Remove all uses of the ServiceLocator from within Coordinators and View Models.
It is still used for mocks in tests, previews etc, and still used in the AppCoordinator.
2025-08-27 18:13:03 +01:00
Doug dfb2425240 Introduce flow parameters to simplify dependencies for child flows. (#4448) 2025-08-27 12:56:06 +00:00
Doug c140209e0c Hide the tab bar when pushing screens on iPhone as requested by the designs. (#4444)
Make the tab bar hide when pushing screens on iPhone as requested by the designs.

Annoyingly we couldn't simply add a second call to .toolbar(.hidden, for:.tabBar) on the pushed screens, but this way is automatic and there's still an override so it's good enough for now.
2025-08-27 10:31:56 +01:00
Doug b601baf539 Tidy up some logs that have a prefix. (#4443)
We haven't needed these for ages, Rust adds them to the log lines.
2025-08-26 16:21:10 +01:00
Stefan Ceriu e4de85c7ba Fixes #4435 - Preserve the user chosen order when uploading multiple media files. 2025-08-26 11:41:35 +03:00
Stefan Ceriu 863f28d476 Improve global proxy detection, building and logging. 2025-08-25 16:57:17 +03:00
Doug a1c31faa64 Remove unnecessary awaits on RoomFlowCoordinator.init. (#4434) 2025-08-22 16:13:53 +01:00
Doug d119964d50 Space flow improvements. (#4430)
* 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.
2025-08-22 15:49:47 +01:00
amshak bb5deb9c50 Make the room list filters smaller. (#4432) 2025-08-22 14:46:39 +01:00
Doug 4bd846118a Add a feature flag for spaces. (#4429)
* Remove the huge conditional compilation block on AppSettings.

It is still required for the ElementCallBaseURL however.

* Add a feature flag for spaces.
2025-08-22 13:47:23 +01:00
Stefan Ceriu 487fd90bdb Fix pasting no longer working for rich text formats. 2025-08-22 13:32:18 +03:00
Stefan Ceriu 6da6350226 Fallback to the first type with a valid extension when sharing media and no supported content types can be found 2025-08-21 15:51:17 +03:00
Stefan Ceriu 028cd17fb0 Add support for audio/* mime types on pasting/sharing/drag&dropping files. 2025-08-21 15:51:17 +03:00
Stefan Ceriu 15fdc2c334 Remove the multipleAttachmentUploadEnabled feature flag. 2025-08-20 14:20:13 +03:00
Stefan Ceriu beb11fd7fd Fix photo and document picker tint colors on dark mode. 2025-08-20 14:20:13 +03:00
Copilot 8c38c11146 Add a Low Priority room filter behind a feature flag. (#4394)
* Add Low Priority room filter with incompatibility rules

Co-authored-by: pixlwave <6060466+pixlwave@users.noreply.github.com>

* Add a feature flag and use the SDK filters.

* Fix filter tests and add RoomSummaryProvider tests for the default filters.

* Remove unnecessary comment.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: pixlwave <6060466+pixlwave@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2025-08-20 11:56:44 +01:00
ElementRobot 195ccfb8ba Translations update (#4422)
* Translations update

* Fix for renamed strings.

* Fix non-flattened strings.

---------

Co-authored-by: Doug <douglase@element.io>
2025-08-20 10:22:03 +01:00
Stefan Ceriu ea8ff3603b Fix #4420 - Configure the video camera picker to record in high quality - [UIImagePickerController.QualityType.typeHigh](https://developer.apple.com/documentation/uikit/uiimagepickercontroller/qualitytype) 2025-08-20 11:44:26 +03:00
Doug 31fc67d0e1 Only use the Element Call timeoutTask for room calls.
SPA call links were being timed out too 🤦‍♂️
2025-08-18 08:37:36 +03:00
Doug ed8f446735 Update the SDK, handle API breaks. (#4418) 2025-08-15 17:25:51 +01:00
Doug 3f6fc03ffd Fix some app route navigation bugs. (#4415)
- Opening a notification would update the stack with an animated pop.
- Opening a permalink from the timeline wouldn't push the room as a child.
2025-08-15 10:34:01 +01:00
Doug f1f6cace77 Fix a bug where the image upload screen was unintentionally dismissed for some failures. (#4414) 2025-08-14 17:19:57 +00:00
Doug 8000dbe29f Add a SpaceScreen for listing rooms and subspaces within a space. (#4412) 2025-08-14 16:24:20 +00:00
Doug de626186bd Add a workaround to include some via parameters for room v12 tombstone links. (#4413)
Without them, following the link fails as previously the server could use the server name from the room ID (which in and of itself seems somewhat error prone).
2025-08-14 13:02:07 +01:00
Doug 3dc6d73899 Add SpaceRoomCell & Space…ProxyProtocols and use them on the SpaceListScreen. (#4404) 2025-08-13 12:06:29 +01:00
Doug 192f4765c3 Remove the share_pos developer option. (#4406) 2025-08-13 08:36:40 +00:00
Doug b3a395acb6 Update the SDK. (#4405) 2025-08-12 16:20:09 +00:00
ElementRobot b173999c38 Translations update (#4398) 2025-08-11 09:27:12 +01:00
Copilot 63aadefd64 Remove unreachable guard condition in String.asciified() (#4395) 2025-08-08 11:31:15 +01:00
Doug a5d3b0ff77 Fix the push animation when selecting a room with the compact layout on iPad.
Also makes sure we don't animate the change of room in the split's detail when using the regular layout
2025-08-08 10:33:08 +01:00
Doug cdf4e04928 Use @Observable instead of ObservableObject for our NavigationCoordinators. 2025-08-08 10:33:08 +01:00
Doug a094362416 Fix some SwiftLint warnings. 2025-08-08 10:33:08 +01:00
Doug 5ed1d9b1ef Fix a bug when a compact split view doesn't react to a change of root coordinator in the sidebar. 2025-08-08 10:33:08 +01:00
Doug c5cd3ea79e Move the Settings flow from the Chats flow up one level to the UserSession flow. (#4390)
* Add the basis for a state machine to UserSessionFlowCoordinator.

* Move the Settings flow from the Chats flow to UserSession flow.

It now works from the Spaces tab.

* Add a StateMachineFactory and use it to publish the state in the tests.
2025-08-07 12:13:02 +00:00
Doug c47ec8a7cc Add a SpaceExplorerFlowCoordinator. (#4383)
* Add a SpaceExplorerFlowCoordinator.

* Project tweaks

- iOS 17.5 so that we can use the simulator.
- Make a Spaces group for common Space related views.
- Fix the tab bar badge colour on iPhone landscape and iPadOS 17 (18 is still wrong 😒)
2025-08-07 12:48:53 +01:00
Doug e95e8ff5aa Label rageshakes from macOS and report the right operating system. (#4392) 2025-08-07 11:39:29 +00:00
Mauro 5ab6f90863 Last Owner should edit admins, and not leave when is last (#4372) 2025-08-07 08:40:14 +00:00
Mauro Romito 7d248187ef fix filtering of non spaces
Revert "fix filtering of non spaces"

This reverts commit a45e4726e1712e4c4d2b59157da06c3c95df1c5e.

x
2025-08-05 16:43:43 +02:00
Doug f59a93d1a9 Initial setup for the SpaceListScreen. (#4380) 2025-08-05 11:06:26 +01:00
ElementRobot d50d540957 Translations update (#4381) 2025-08-05 09:05:12 +00:00
Doug bf0adfcb25 Implement tab bar badges, visibility and selection. (#4373) 2025-08-05 09:23:45 +01:00
Doug e182940844 Handle TimelineDiff as an enum with associated values. (#4379)
* Handle TimelineDiff as a true enum.

* Update the SDK.

* Silence some warnings.
2025-08-05 09:23:22 +01:00
Robin 514c7808e2 Delegate the sending of call notifications to Element Call (#4370)
* 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>
2025-08-01 18:47:48 +02:00
Mauro 731d60b6e9 Restore permissions to creator and display them as owners in the list (#4369)
* 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
2025-07-31 16:52:55 +02:00
Doug 496c29ae36 Hide the tab bar whilst we're working on it and add some tests. 2025-07-31 14:09:26 +01:00
Doug 6307534341 Move session related responsibilities from ChatsFlowFlowCoordinator to UserSessionFlowCoordinator.
Specifically: onboarding, session verification and logout.
2025-07-31 14:09:26 +01:00
Doug 1ca84c8c94 Re-introduce a basic UserSessionFlowCoordinator using the NavigationTabCoordinator. 2025-07-31 14:09:26 +01:00
Doug 5658a30136 Rename UserSessionFlowCoordinator to ChatsFlowCoordinator. 2025-07-31 14:09:26 +01:00
Doug 4943db841a Create a NavigationTabCoordinator to manage a TabView. 2025-07-31 14:09:26 +01:00
Mauro e70e1f36b2 SDK Update + PowerLevels API update (#4366)
* 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
2025-07-30 14:42:45 +00:00