Valere Fedronic
ec00eac164
Add support for starting voice calls from a DM ( #5305 )
...
* feat: Start voice call from DM
* rename voiceCall:bool to isVoiceCall
* review: Fix a typo
* review: use one displayCall(bool) instead of 2 actions
* review: Add a new specific preview for DM calls
* combine startCall and startVoiceCall in single enum with isVoiceCall
* review: add isVoiceCall to presentCallScreen action
* review: Use proper a11y for voice vs video
* add voice/video options to UserProfile Screen
* fixup: move config params to the roomInfo object
* review: Revert changes on preview as the toolbar cannot be snapshot'd
* review: Extract call controls in specific file
* oups: Add voice call option in room details screen
* Update room details screenshots
* Update user profile screenshots
* Update room member details screenshots
* fixup: remove dead code
2026-04-09 16:22:31 +01:00
Valere Fedronic
d792f6e4f9
Require video for callkit even if voice call only to workaround a bug answering calls on the lock screen ( #5366 )
2026-04-09 14:18:06 +00:00
Doug
d6cd2c696e
Add a view to show the user's account from Element Classic. ( #5361 )
...
No presentation logic yet.
2026-04-08 21:18:03 +01:00
Doug
ff4270addc
Update the SDK handling breaking changes. ( #5364 )
2026-04-08 21:11:57 +01:00
Mauro Romito
b5261272ed
fixes an issue where the playback speed was preventing the a11y label to be read
2026-04-08 17:48:35 +02:00
Mauro Romito
5c00311e59
floating date feature is now out of the feature flag
2026-04-08 14:55:07 +02:00
Doug
d34c38d48a
Add a view with instructions for enabling backups in Element Classic. ( #5359 )
...
No presentation logic yet.
2026-04-08 11:03:30 +01:00
Hugh Nimmo-Smith
5574dc8ab7
Improve detection of link device completion when linking a new device via QR ( #5323 )
...
* Improve detection of link device completion
* Fix tests to match
2026-04-08 09:48:00 +01:00
ElementRobot
979ca55b0b
Translations update ( #5357 )
2026-04-07 11:32:54 +01:00
Mauro Romito
e8cc722054
add a spinner when starting LLS
2026-04-03 16:46:20 +02:00
Mauro Romito
2715ffdb17
force the timeline to render as expired as soon as the stop button is pressed
2026-04-03 16:46:20 +02:00
Mauro Romito
524bef6d60
add new tests to LocationSharingViewModel
2026-04-03 14:19:42 +02:00
Mauro Romito
a5054f506a
implement the stop action in the LiveLocationRoomTimelineView
2026-04-03 14:19:42 +02:00
Mauro Romito
0fb321576d
implement the start live location handling in the LocationSharingScreenViewModel
2026-04-03 14:19:42 +02:00
Mauro Romito
299649abbd
pr suggestions
2026-04-03 12:36:45 +02:00
Mauro Romito
eabfdcd035
implement the start, send and stop functions
2026-04-03 12:36:45 +02:00
Mauro Romito
41db3a1815
update plist to include background location updates
2026-04-03 12:36:45 +02:00
Stefan Ceriu
22b1ecf6be
Remove now unneeded waitForInitialItems TimelineProvider method.
2026-04-02 16:42:50 +03:00
Stefan Ceriu
e375950ba1
Remove the shouldDisambiguateDisplayNames parameter from the RoomEvent and RoomStateEvent string builders.
2026-04-02 12:30:43 +03:00
Stefan Ceriu
33fe72041f
Update reply view border corner radii and color
...
And also update relating preview test snapshots
2026-04-01 18:42:45 +03:00
Stefan Ceriu
79e706e5d9
Hook up the RoomThreadList to the RoomFlowCoordinator state machine and presenting threads.
2026-04-01 14:09:23 +03:00
Stefan Ceriu
5f8d7d75a1
Fix a couple of warnings
2026-04-01 14:09:23 +03:00
Stefan Ceriu
64614cdfb5
Rename "Auxiliary" windows to "Secondary" windows
2026-03-31 20:33:33 +03:00
Stefan Ceriu
a41da0616c
Fix which roomID is used when dismissing windows and unit test mocks.
2026-03-31 20:33:33 +03:00
Stefan Ceriu
aef8d79104
Change the "open in new window" room list cell action underneath mark as read/unread and change its icon
2026-03-31 20:33:33 +03:00
Stefan Ceriu
bbc27d17ec
Use the environment's supportsMultipleWindows instead of UIDevice.current.isPhone
2026-03-31 20:33:33 +03:00
Stefan Ceriu
256cc5c35a
Disable creating new windows (duplicates)
2026-03-31 20:33:33 +03:00
Stefan Ceriu
50522b5261
Use different auxiliary window sizes on mac vs iPad
2026-03-31 20:33:33 +03:00
Stefan Ceriu
d52f392758
Disable multiple windows when screen lock is enabled.
2026-03-31 20:33:33 +03:00
Stefan Ceriu
2b2b926fdc
Clean up the window manager and its protocols
2026-03-31 20:33:33 +03:00
Stefan Ceriu
685d2d083c
Dismiss a room's window when its flow finishes as there's no longer a reason for it to be alive.
2026-03-31 20:33:33 +03:00
Stefan Ceriu
92ebfed4e1
Programatically focus the main window when invoking the global search
2026-03-31 20:33:33 +03:00
Stefan Ceriu
b9c5c3446a
Move the global search shortcut to application commands so it's more reliable with multiple windows
2026-03-31 20:33:33 +03:00
Stefan Ceriu
aae95a9489
Best effort attempt at cleaning up the WindowManger registered coordinators.
2026-03-31 20:33:33 +03:00
Stefan Ceriu
a33c2b6f39
Prevent the window manager from being setup more than once.
2026-03-31 20:33:33 +03:00
Stefan Ceriu
b034fffb1f
Close all secondary windows on logout
2026-03-31 20:33:33 +03:00
Stefan Ceriu
806767be7f
Set a default size for all the detached windows
2026-03-31 20:33:33 +03:00
Stefan Ceriu
89f56b4c55
Hook up the settings screen
2026-03-31 20:33:33 +03:00
Stefan Ceriu
c66e737ee0
Automatically dismiss (now) empty windows
2026-03-31 20:33:33 +03:00
Stefan Ceriu
12b6b7ec74
Introduce support for multiple windows on mac and iPad OS
...
Once the app starts the WindowManager is configured with SwiftUI's environment OpenWindowAction. It can then be used to register coordinators (that provide the toPresentable view) and an optional flow coordinator (as most of the screens are part of a flow, especially rooms).
Once a coordinator is registed, the WindowManager invokes the OpenWindowAction which in turn makes the Application call its newly introduced WindowManagerWindowType WindowGroup's block to instantiate a new visual window rooting that view.
The WindowManager is also responsible for wrapping the presentable in a disappearance block and clean up the coordinator stack.
# Conflicts:
# ElementX/Sources/Application/AppCoordinator.swift
2026-03-31 20:33:33 +03:00
Stefan Ceriu
26e659dce9
Add RoomThreadListScreen preview snapshots.
2026-03-31 18:21:14 +03:00
Stefan Ceriu
5120a117cc
Add a feature flag for the new RoomThreadList screen.
2026-03-31 18:21:14 +03:00
Stefan Ceriu
ba810116a0
Add a new RoomThreadListScreen and hook it up to the RoomThreadListService
...
It will automatically paginate to fill the screen and update the list as updates come in.
2026-03-31 18:21:14 +03:00
Stefan Ceriu
d27b6697a9
Introduce the RoomThreadListServiceProxy and expose it from the RoomProxy
...
Also update the sdk and app mocks and add a simple `RoomThreadListServiceProxyMock`
# Conflicts:
# ElementX.xcodeproj/project.pbxproj
# ElementX.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
# SDKMocks/Sources/Generated/SDKGeneratedMocks.swift
# project.yml
2026-03-31 18:21:14 +03:00
Stefan Ceriu
0104ad06aa
Refactor the RoomMessageEventStringBuilder to take a Style instead of a Destination
...
This make its usage clearer and makes different styles reusable
2026-03-31 18:21:14 +03:00
Mauro Romito
589d0cd3fb
include the always usage location description in the info.plist
2026-03-31 17:09:42 +02:00
Mauro Romito
fcbb7ab057
reactively determine with a timer if the lls timeline item has expired or not.
...
Move mockToday410/420/430 to private Date extension in LiveLocationRoomTimelineView
Agent-Logs-Url: https://github.com/element-hq/element-x-ios/sessions/d2136882-1acc-455d-a363-815e0fb73e89
Co-authored-by: Velin92 <34335419+Velin92@users.noreply.github.com >
fix
2026-03-31 14:29:04 +02:00
Mauro Romito
b5b459d947
PR Suggestions
2026-03-31 12:58:27 +02:00
Mauro Romito
9e1545e3c1
added tests
2026-03-31 12:58:27 +02:00
Mauro Romito
9e17fd0315
implemented the usage of the live location manager permission handling in the location sharing screen.
2026-03-31 12:58:27 +02:00