483 Commits

Author SHA1 Message Date
Doug
b9c121db82 Move BigIcon into Compound and add a new TitleAndIcon component. (#4866)
* Move BigIcon into Compound.

* Replace the old server selection image asset with the \.host icon.

* Add a new TitleAndIcon component to Compound.

* Add the ability to override TitleAndIcon's padding.
2025-12-16 16:01:26 +00:00
Doug
046cf6c120 General tidy-up related to QR codes. (#4865)
* Tidy-up Rust to Swift mapping.

* Refactor out a dedicated QRCodeErrorView.

* Use the new QRCodeErrorView for most error state snapshots.

* Simplify QRCodeErrorView structure.

Also updates the background to match the designs.

* Fix a small compile error in the unit tests.
2025-12-16 15:59:59 +00:00
Doug
8df57abc1e Add a service and flow coordinator for the LinkNewDevice feature. (#4859)
* 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.
2025-12-15 14:44:26 +00:00
Stefan Ceriu
09579fd8bc Tweakity tweak tweaks 2025-12-11 15:42:17 +02:00
Stefan Ceriu
ea55e74a22 Move the room list sending state icons to the front of the latest event. 2025-12-11 15:42:17 +02:00
Doug
fe9aa48aab Add a Link New Device screen (behind a feature flag). (#4811) 2025-12-11 11:45:23 +00:00
Doug
28556da516 Remove eraseToStream now that any AsyncSequence is available to us. (#4836)
* Remove `eraseToStream` now that `any AsyncSequence` is available to us.

* Remove the now unnecessary backport of Mutex.

* Silence a couple more deprecation warnings.
2025-12-10 18:33:15 +00:00
Mauro Romito
7d86d8057d implemented the ask to join restricted rule join UI, and added tests and previews for it. 2025-12-04 16:23:34 +01:00
Mauro Romito
5793690202 updated edit details screen copies to reflect the usage of spaces. 2025-12-03 17:42:57 +01:00
Mauro Romito
4b28d61d46 pr suggestions and updated tests 2025-12-02 18:17:16 +01:00
Mauro Romito
3412a8360d added preview tests 2025-12-02 18:17:16 +01:00
Mauro Romito
2968f67514 implemented the navigation to the manage auth spaces screen
# Conflicts:
#	ElementX/Sources/FlowCoordinators/RoomFlowCoordinator.swift
#	ElementX/Sources/FlowCoordinators/SpaceSettingsFlowCoordinator.swift
#	ElementX/Sources/Screens/SecurityAndPrivacyScreen/SecurityAndPrivacyScreenCoordinator.swift
#	ElementX/Sources/Screens/SecurityAndPrivacyScreen/SecurityAndPrivacyScreenModels.swift
2025-12-02 18:17:16 +01:00
renovate[bot]
fc8f6cf0e7 Update dependency element-hq/compound-design-tokens to v6.4.2 (#4806)
* Update dependency element-hq/compound-design-tokens to v6.4.2

* Update Package.resolved files and snapshots.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2025-12-02 14:32:04 +00:00
Doug
2070ae4353 Update Compound's List header style to match our iOS 26 components. (#4797)
* Update Compound's list header font for iOS 26.

* Update the preview snapshots.

* Update UI test snapshots.
2025-11-28 14:31:31 +00:00
Mauro Romito
6d77371666 multi selection should have the accessory on the leading side 2025-11-28 13:27:45 +01:00
Doug
782916f03d Show the last message state in the room list. 2025-11-27 16:43:48 +00:00
Mauro Romito
66266c1223 updated existing preview tests and added a test for the single space cases
fixed a bug where was not possible to re-select the space members option with unknown spaces.

pr suggestions
2025-11-27 13:19:10 +01:00
renovate[bot]
eecc4ebc78 Update dependency element-hq/compound-design-tokens to v6.4.1 (#4780)
* Update dependency element-hq/compound-design-tokens to v6.4.1

* Update snapshots and Package.resolved files.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2025-11-25 13:26:52 +00:00
Mauro Romito
c98d6b3a56 esperanto deleted and regenerated some preview tests 2025-11-24 15:45:38 +01:00
Mauro Romito
bc7e00d753 redesigned empty state for the room members list 2025-11-24 12:18:33 +01:00
Mauro Romito
8eb07e15cb room members list redesign 2025-11-21 14:23:19 +01:00
Mauro Romito
18d79e0f08 corrected copies and layout for the security and privacy screen 2025-11-20 12:48:08 +01:00
Mauro
ebbaeedb0a Rename snapshots (#4756)
* renaming snapshots so that it's easier to diff them when an upgrade happens.

* fix macOS runner version for the compound tests

* os version update in the yml

* possible fix to run compound-ios tests
2025-11-17 16:46:51 +00:00
Mauro
b0403d2b9f Run CI with Xcode 26.1 RC (#4672)
* Use Xcode 26.1 RC on CI

* regenerated previews with 26.1

* ui tests

* fix

* fix some iPad tests rendering

* remove useless fastlane line

---------

Co-authored-by: Doug <douglase@element.io>
2025-11-17 12:30:57 +01:00
Mauro Romito
3e81853f4a security and privacy redesign for spaces. 2025-11-13 14:40:16 +01:00
Mauro Romito
0093dbbe31 implemented the manage space rooms permission 2025-11-13 14:05:52 +01:00
Stefan Ceriu
9a6670ab06 Update preview snapshots 2025-11-12 16:54:35 +02:00
Mauro
6d57153136 Permissions screen redesign (#4735)
* Redesigned permissions screen

# Conflicts:
#	ElementX.xcodeproj/project.pbxproj

* updated tests

* update proj

* fix pseudo language tests
2025-11-12 14:41:44 +01:00
Mauro Romito
66f3b86c69 updated preview tests 2025-11-11 12:31:04 +01:00
ElementRobot
728cd25c26 Translations update (#4721) 2025-11-10 10:47:25 +00:00
Doug
cbcb61d8f3 Only offer to verify if a cross-signed device is available and improve the UX whilst waiting. (#4710)
* 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>
2025-11-07 12:10:12 +00:00
Mauro
6b19d109c7 Space Settings: Leave Room (#4700)
* Implementation for all navigations inside the space settings aside the left space action

# Conflicts:
#	ElementX/Sources/FlowCoordinators/SpaceSettingsFlowCoordinator.swift

* refactored the leave space view to use its own view model

# Conflicts:
#	ElementX.xcodeproj/project.pbxproj

* implemented the leave space view model also in the settings screen, and corrected some tests

* reusing the details coordinator for the space settings screen

* leave space from settings implemented

* fix project

* minor pr fixes

* code improvements
2025-11-07 12:11:21 +01:00
ElementRobot
62a64f4882 Translations update (#4690)
* Translations update

* Update snapshots

---------

Co-authored-by: Doug <douglase@element.io>
2025-11-04 18:07:22 +00:00
Mauro
0b3633ea57 Space Settings UI tweaks (#4678)
* design tweaks for the space settings flow

* pr suggestions

* update proj
2025-10-31 12:52:56 +01:00
Doug
b3d4ed0274 Introduce a StartChatFlowCoordinator instead of handing a navigation stack to the Screen Coordinator. (#4674)
* Introduce a basic StartChatFlowCoordinator.

* Move the rest of the start chat flow from the screen coordinator into the flow coordinator.

* Add a UI test for the entire start chat flow.

* Refactor CreateRoom… to CreateRoomScreen…
2025-10-30 16:12:56 +00:00
Mauro Romito
fdc741da2e Basic implementation of the UI, navigation wil be implemented in the next PR 2025-10-30 15:23:03 +01:00
Mauro Romito
943e550658 implemented the basics of the flow coordinator, the logic and the navigation flow to get to the space settings view 2025-10-30 15:23:03 +01:00
ElementRobot
fe74083ce4 Translations update (#4660)
* Translations update

* Fix pseudo language snapshots.

---------

Co-authored-by: Doug <douglase@element.io>
2025-10-28 14:07:19 +00:00
Stefan Ceriu
57b3ab1ea1 Update preview test snapshots 2025-10-28 09:53:15 +00:00
Mauro
23194107bb Display members of a space (#4629)
* Present members of a space

* present the members modally from the space

* Implemented a room members flow coordinator to make such flow more modular and reusable

this is required since we will need to reuse this module also in the space settings, and later we could also replace it in the RoomFlowCoordinator.

* the implementation to support at least the SpaceFlowCoordinator is done a follow UP should do the refactor.

* remove modal usage from the flow, we want to always be a navigation flow

* Improved and implemented the room navigation in the members flow coordinator

* pr suggestions and refactored the start chat flow and the invite screen

* updated copies for managing room members

* Update ElementX/Sources/Screens/Spaces/SpaceScreen/SpaceScreenViewModel.swift

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

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2025-10-27 13:17:50 +01:00
Doug
31bcedcc7f Use the editor toolbar role on iOS 26 instead of left aligning the header by frame. (#4647)
The weird back button animation doesn't happen anymore 🥳
2025-10-22 11:36:14 +01:00
Mauro
6160c44d67 Update copyright holding and dates (#4640)
* Update copyright holding and dates

* compound IDE Macros updated

* update copyright

* update copyrights done

* update templates and README
2025-10-21 14:34:56 +02:00
Doug
bab9b89416 Some random tweaks made on a train 🚆 (#4636)
* Fix the search text field's tint colour.

* Don't allow optional content IDs in the placeholder avatar.

* Use SwiftUI to resolve the hex values in the Inspector app.

This fixes incorrect values being shown in dark/high-contrast modes.

* Fix a layout bug with the colour swatch in the Inspector app on iPhone.

* Switch to the chats tab when selecting a room with the global search screen.

* Run the latest SwiftFormat.
2025-10-21 10:04:54 +01:00
Doug
3e61babc89 Make the SpaceRoomListProxy publish its SpaceRoomProxy updates. (#4607)
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.
2025-10-09 17:22:43 +01:00
Doug
aa4ea06a10 The space tweaks continue! (#4606)
* Update a string on the space announcement sheet.

* Don't show space rooms after using the join button in the space room list.

* Allow the Deselect All button to Select (almost) All as well.

* Fix the cells in the leave space sheet when there are only admin rooms.
2025-10-09 16:56:54 +01:00
Doug
c6ca17770e Fix the bloom on the space tab for real. (#4604)
* Actually fix the bloom height for spaces this time 🤦‍♂️

* Use a better y position.

It's still not great on iPad.
2025-10-09 10:13:35 +01:00
Doug
d026970565 Add UI tests for accepting space invites. (#4602)
* Fix the space visibility icon size in the join room screen.

* Add a UI test for accepting space invites.
2025-10-09 10:11:02 +01:00
Mauro Romito
cc6b75edd2 updated preview tests 2025-10-07 18:49:37 +02:00
Mauro Romito
3de7c7d460 new divider color for iOS 26
# Conflicts:
#	PreviewTests/Sources/__Snapshots__/PreviewTests/leaveSpaceView.Only-Admin-Rooms-iPad-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/leaveSpaceView.Only-Admin-Rooms-iPhone-16-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Bug-report-disabled-iPad-en-GB.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Bug-report-disabled-iPad-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Bug-report-disabled-iPhone-16-en-GB.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Bug-report-disabled-iPhone-16-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Default-iPad-en-GB.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Default-iPad-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Default-iPhone-16-en-GB.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/settingsScreen.Default-iPhone-16-pseudo.png
2025-10-07 18:49:37 +02:00
Mauro
d005243e31 Implemented message forwarding for media previews and media timelines (#4579)
* implemented message forwarding for media previews and media timelines

* updated tests

* pr suggestion

* fix tests

* fix tests
2025-10-07 14:34:14 +02:00