Commit Graph

1852 Commits

Author SHA1 Message Date
Doug
e989463d91 Restore the .oidcCallback route for external authentication. (#5391)
* Restore the .oidcCallback route (partially reverts #3461) for external authentication.

* Make sure OIDC also works for non-http URLs.

* Remove oidcAuthentication from the state machine.

There isn't a reliable way to detect failure/cancellation when e.g. the user returns from an external app without interacting with the MAS page.
2026-05-05 12:47:07 +01:00
Mauro Romito
4b41cefb59 limit knock FF only room creation and access type changes
# Conflicts:
#	ElementX/Sources/Screens/RoomScreen/RoomScreenViewModel.swift
2026-05-04 14:12:31 +03:00
Doug
6cfcd7d41f Fixes for multi-window support. (#5528)
* Correctly handle the re-opening of the main window.

Add an additional safe-guard to ensure only one main window exists.
Make sure all secondary windows use the correct tint colour.

* Fix a bug where the settings screen isn't shown on macOS when the AppLock feature is enabled.
2026-05-01 14:44:04 +01:00
Mauro
11584d6bfe Live Location Sharing - handle server echoes (#5514)
* Track active live location sessions by ID instead of timeout.

# Conflicts:
#	ElementX/Sources/Services/Location/LiveLocationManager.swift

* implemented a system to promote starting session to active sesessions to send locations at the right time, and a system to remove a local session if it's handled by an external device.

* pr suggestions

---------

Co-authored-by: Doug <douglase@element.io>
2026-04-30 13:18:36 +00:00
Stefan Ceriu
f310ec9e82 Allow the mac app to chose room avatars directly from files instead of the photo library 2026-04-30 14:58:08 +03:00
Doug
c0de48164d Update TimelineMediaPreviewDetailsView to match the latest design. (#5513)
Update the TimelineMediaPreviewDetailsView design.
2026-04-29 19:34:22 +01:00
Doug
df1a407142 Remove support for handling SPA calls within the app. (#5515)
* Remove support for handling SPA call links.

They were a stop-gap solution whilst we were building support for embedded room calling.

* Simplify ElementCallConfiguration now that there is only 1 type of call to handle.

* Remove the unused overlayModule from NavigationRoomCoordinator.
2026-04-29 19:32:38 +01:00
Doug
1c8c5ea711 Update the SDK, handling OIDC/OAuth API breaks. (#5497)
Update the SDK handling API breaks.
2026-04-27 14:46:53 +01:00
Doug
9987a34265 Fix a bug where the onboarding flow was dismissed by logging out. (#5481)
* Fix a bug where the onboarding flow was dismissed by logging out.

* Add some tests for the available actions while we're here.

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2026-04-27 14:33:09 +01:00
Mauro Romito
af08010370 removed LLS feature flag 2026-04-27 15:13:07 +02:00
Richard van der Hoff
bc32a05a2c Promote "history sharing on invite" out of developer options (#5480)
* Enable key-share-on-invite irrespective of feature flag

* Remove feature-flag dep: warning on starting chat with new people

* Remove feature-flag dep: invite from room member details

* Remove feature-flag dep: warning on new users in invite screen

* Remove feature-flag dep: from room details screen

* Remove feature-flag dep: starting chat from user profile screen

* Remove feature-flag dep: timeline info on forwarded keys

* Remove feature-flag dep: RoomScreenModel

* Remove `enableKeyShareOnInvite` from AppSettings

* Remove `enableKeyShareOnInvite` feature flag

* Remove outdated comments

* Update preview test room snapshots as their header now includes the history sharing icon
2026-04-27 14:43:18 +03:00
Stefan Ceriu
2ad953e3c8 Tweak some things, fix some things, delete some things 2026-04-24 16:44:00 +03:00
amshak
eb1cfb68d5 Combine DM call actions into one menu item
This helps give more space to the room header. Specially in the scenario when threads is enabled.
2026-04-24 16:44:00 +03:00
Mauro
3acb558980 Open Live Locations map on tapping on the banner (#5477)
* Implemented opening the LLS on our own user when tapping on the banner

* added a test for moving the map as soon as the first update arrives.

* updated preview tests
2026-04-24 13:19:07 +02:00
Doug
7d703337d7 Add a Developer Options button to the AuthenticationStartScreen on Nightly builds. (#5472)
* Add a Developer Options button to the AuthenticationStartScreen on Nightly builds.

* Make sure the Developer Options are actually shown in the settings screen on Nightlies.
2026-04-23 15:52:47 +01:00
Mauro
36fd7b2660 LocationSharingScreen: fix indefinite loading on the center to location button in non picker mode (#5469) 2026-04-22 16:36:15 +00:00
Mauro Romito
b1d82add91 stop showing live location disclaimer when accepted. 2026-04-22 18:17:17 +02:00
Doug
37d0863835 Bold the room cell when highlighted if not showing all activity. (#5468) 2026-04-22 16:04:33 +01:00
Doug
2284719c52 Update the Deactivate Account strings (and icon) to call it Delete Account. (#5458)
Use the new strings and icon.

Snapshots have already been updated.
2026-04-21 15:50:27 +01:00
amshak
b16bbdcc72 Notification Decoration Revised (#5312)
1. I removed the grey dots for when there is activity in rooms set to mentions or mute.
2. For all unread rooms, I made the message preview text bold for better legibility
3. For rooms with no unreads, I made the font weight regular, again for legibility

We have also mergeg the new room list activity rendering with the existing feature hide unread badge feature flag and provide 3 variations: current production behavior, no badge but bolding, and no bolding and no badge
2026-04-21 14:12:07 +03:00
Mauro Romito
4edebeeb75 updated the UI for the live locations distance to match designs. 2026-04-21 12:32:50 +02:00
Mauro Romito
693a76ecf0 allow users to set live location minimum distance update 2026-04-21 12:32:50 +02:00
Valere Fedronic
50ae841d78 Support for ongoing voice vs video call + joining (#5399) 2026-04-21 09:11:52 +00:00
Doug
fc97cbc006 Add a feature flag for automatic back pagination. (#5445) 2026-04-20 17:47:26 +01:00
Mauro Romito
58a6d0a33f fix invite users confirmation sheet strings 2026-04-20 18:33:44 +02:00
Stefan Ceriu
d5555a9b23 Fix session verification SAS flow not automatically starting
With #5116 removing the `verificationRequestAccepted` view state and its
`.startSasVerification` button action we now need another way of starting the SAS
flows whenever the verification requests gets accepted. As such a state machine
transition from `acceptingVerificationRequest` to `verificationRequestAccepted`
will now automatically call `startSasVerification` on the SessionVerificationProxy.
2026-04-20 18:19:27 +03:00
Mauro Romito
f23d6fe69a fixed a bug that made the map still follow your location, even whan trying to center the map on an annotation. 2026-04-20 10:17:27 +02:00
Aaron Thornburgh
f540c5a79a Replace the Cancel button with a Close button on the Space Filters screen. (#5408)
* Updated placement and type of button

Moved the "X"/Close button from the left to the right, and made it a primary action.

* Update snapshots.

---------

Co-authored-by: Doug <douglase@element.io>
2026-04-17 16:14:17 +01:00
Doug
726ab435a0 Revert the space filters Toggle and instead don't try to use glass when in the sidebar.
This reverts commit 283029b14976cda1aa567c947c27b09916c88824.
2026-04-17 15:22:56 +01:00
Doug
8ec7a69705 Fix the space filters button on iPad using a Toggle for default styling. 2026-04-17 15:22:56 +01:00
Stefan Ceriu
635ebb720a Simplify and fix implementation 2026-04-17 17:17:55 +03:00
bxdxnn
cfd6703bf5 Make media captions scrollable 2026-04-17 17:17:55 +03:00
Mauro
2e9a499fc3 LLS Sheet implementation (#5420)
* Add LiveLocationSheet and refactor existing views to share code

* Implement logic for highlighting a specific LLS from a user once selected in the sheet

* Updated tests, project and added new previews for the LLS sheet.

# Conflicts:
#	PreviewTests/Sources/__Snapshots__/PreviewTests/liveLocationRoomTimelineView.Bubbles-iPad-pseudo.png
#	PreviewTests/Sources/__Snapshots__/PreviewTests/liveLocationRoomTimelineView.Bubbles-iPhone-pseudo.png

* add Equatable conformance to CLLocationCoordinate2D
2026-04-17 11:13:16 +00:00
Doug
350c04b0f3 Add support for homeserver capabilities to disable the UserDetailsEditScreen UI. (#5421)
Add support for homeserver capabilities to disable editing your user profile.

Also updates editable avatar size/formatting to match the latest Figma at the same time.
2026-04-17 11:52:46 +01:00
Aaron Thornburgh
ce0363ad20 Update the icon for "Remove this device" on the Settings screen. (#5415)
* SettingsScreen > Update the icon for "Remove this device"

Change the icon from "Sign Out" to "Close"

* Update snapshots.

---------

Co-authored-by: Doug <douglase@element.io>
2026-04-17 10:34:02 +00:00
Doug
945e34baa6 Tweak the font/icon sizes on the Space visibility label. (#5396) 2026-04-17 09:57:18 +00:00
Stefan Ceriu
33ffea4eb8 Fix various warnings 2026-04-17 10:55:48 +03:00
Doug
a0baa82471 Use a VStack for invite buttons when the HStack doesn't fit. (#5403)
The Accept/Decline labels were being wrapped onto 2 lines.
2026-04-16 13:01:53 +01:00
Mauro
a27effdac6 Render LiveLocations in the map (#5394) 2026-04-14 18:27:34 +02:00
Skye Elliot
477bf859c5 Prompt user when inviting users with uncached identities (#5331)
If the user attempts to invite someone (to a room or creating a DM) whose identity is not cached, we prompt them to make sure this was their intention.
2026-04-14 14:51:58 +03:00
Stefan Ceriu
03fbf8fbd5 Add an action to the newly introduced FloatingDateBadge that scrolls the timeline to that day. (#5350)
and replace the TimelnieTableViewController's `floatingDateText` with a pure date.
2026-04-14 11:27:27 +03:00
Doug
252e2f75df Verify Element X with an existing Element Classic account. (#5374)
* Read and import the secrets from ClassicAppAccounts.

* Record snapshots.

* Add some documentation, tidy up tests and fix the dismissal of the backup instructions.

* Workaround flakey tests (the fulfilments weren't always firing).

* Allow a custom Classic App deep link URL to be configured.
2026-04-13 15:30:09 +01:00
Mauro Romito
3eeade36e0 swiftformat 2026-04-13 11:40:22 +02:00
Doug
e3a074b8b2 Remove the Spaces Announcement sheet. (#5376) 2026-04-10 17:49:28 +01:00
Mauro
2d2295bcc1 Live Location Sharing Banner (#5370)
* Live Location Sharing Banner

# Conflicts:
#	ElementX.xcodeproj/project.pbxproj

* updated the top banner modifier and the top banner views

# Conflicts:
#	ElementX/Resources/Localizations/en-US.lproj/Localizable.strings
#	ElementX/Resources/Localizations/en.lproj/Localizable.strings

* improved the stopping function from the timeline item

* stop live location sharing before starting a new one.

* added some tests for LiveLocationManager

* pr suggestions
2026-04-10 14:50:42 +02:00
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
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
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