Commit Graph

27 Commits

Author SHA1 Message Date
Mauro
56eec826df Fix A11y tests (#5104)
* replace NavigationStack with ElementNavigationStack to allow the content to be rendered without a NavigationStack in a11y tests

* fix a11y tests

* update xcodeproject

* swiftformat fix

* use iOS 26.1 for CI

* use a wrapper to solve the issue for a11y tests

* ElementNavigationStack only uses the trick in DEBUG mode, and added a swiftlint rule to prevent the usage of NavigationStack
2026-02-13 16:45:58 +01:00
Doug
8e6f9f482b Lock the Link New Device flow to portrait and improve Cancel/Try Again handling. (#5094)
* Lock the LinkNewDeviceScreen to portrait.

* Add cancel buttons to the QR Code errors and handle cancel/startOver correctly.

* Use the shared QRCodeErrorView in the LinkNewDeviceScreen.

* Clarify the different QR Error/ErrorStates a bit more.

* Update snapshots.
2026-02-12 11:21:24 +00:00
Stefan Ceriu
04053ae69b Update files following swiftformat upgrade 2026-01-27 12:50:57 +02:00
Doug
082a2f850e Handle OIDC cancellation and workaround missing progress when linking a new device. (#4935)
* Fix a bug where the link device flow wasn't dismissed when complete.

* Listen for cancellation of the WAS when linking a device (dismissing the QR screen when it happens).

* Add CustomStringConvertible conformances to QRCodeLoginScreen actions.
2026-01-09 14:08:05 +00:00
Doug
15eae621b2 Add tests for linking a new device. (#4934)
* Replace GrantLoginWithQrCodeHandlerSDKMock with LinkNewDeviceServiceMock.

Add tests for all initial states on the QRCodeLoginScreen.

* Add tests for linking both mobile and desktop devices.

* Add UI tests for linking a new device.

* Don't show the Link Desktop Computer button when running on macOS.

This mirrors the decision to hide the Sign In With QR Code button on the start screen.
2026-01-09 13:10:14 +00:00
Doug
288ec02b9f Fix compile error. 2026-01-07 12:37:10 +00:00
Doug
7c839efffc Add support for linking new devices in the QRCodeLoginScreen. (#4891)
* Adds the remaining parts for showing/scanning a QR code to link a new device.

* Refactor the QRCodeLoginService to work the same way as the LinkNewDeviceService.
2026-01-07 12:18:39 +00:00
Doug
10bd3015ee Final tweaks to the existing QR code screens to match the designs. (#4874)
* Simplify QR errors even more and use the correct error state for deviceAlreadySignedIn.

* Remove the pre-defined padding on TitleAndIcon and use it in the QRCodeLoginScreen too.

* Update FullscreenDialog to allow different horizontal padding in each section.
2025-12-17 17:23:55 +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
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
33fcb8e667 Allow the app to be configured to bypass the server selection screen. (#4131)
* Make account provider configuration more flexible.

- Change defaultHomeserverAddress to an array of providers (needs UI).
- Add allowOtherAccountProviders to prevent the user from manually entering a provider.

* Refactor QR code scan failures into a common type.

* Validate scanned QR codes against the allowed account providers.

* Hide the login flow on the QR code screen when restricted.
2025-05-20 11:09:50 +01:00
Doug
70fde932a4 Adopt the new start chat button design. (#4013)
* Update compound and handle plain to tertiary/textLink button style updates.

* Update the start chat button to use the right icon/style.

* Update preview snapshots.

* Fix remaining snapshots.
2025-04-11 17:09:57 +01:00
Doug
772e754773 Update Compound (#3803) 2025-02-20 14:15:26 +00:00
manuroe
c29f4cc9b4 Dual licensing: AGPL + Element Commercial (#3657)
* New LICENSE-COMMERCIAL file

* Apply dual licenses: AGPL + Element Commercial to file headers

* Update README with dual licensing
2025-01-06 11:27:37 +01:00
Doug
e25f10e74d Update HeroImage to match the BigIcon component from Compound. (#3439)
We can move it across in a following PR.
2024-10-23 12:13:14 +01:00
Doug
fbccf7ff06 Add a subtitle to the QR login instructions. (#3386) 2024-10-09 17:54:01 +01:00
Doug
a7aa116beb Require acknowledgement to send to verified users who have unsigned devices or have changed their identity. (#3215)
* Refactor HeroImage style.

* Add a screen to resolve (crypto-related) timeline item send failures.

* Refactor send failures.

* Update the SDK.
2024-09-10 09:56:11 +01:00
Stefan Ceriu
89eae00479 Switch license to AGPL (#3237)
* Switch license file to AGPL

* Update file copyright headers

* Update the default project file header
2024-09-06 16:34:30 +03:00
Mauro
e09e34aa61 QR Code Login Flow (#2767)
Co-authored-by: Hugh Nimmo-Smith <hughns@users.noreply.github.com>
Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
2024-05-29 17:07:17 +02:00
Doug
7134361876 Fix some snapshots. (#2749) 2024-04-26 14:07:20 +01:00
Doug
b0db1f67e1 Update strings with API breaks. (#2720) 2024-04-22 10:52:29 +01:00
Mauro
46d5057f8e QR Code, verification code views (#2685) 2024-04-12 09:29:14 +00:00
Mauro
392019c61c QR Code error views (#2678)
Co-authored-by: Doug <douglase@element.io>
2024-04-11 08:32:56 +00:00
Doug
37a8c8988b Update strings and add productionAppName value for the new placeholder. (#2677)
* Update strings and add productionAppName value for the new placeholder.

* Fix snapshots.

* Fix more snapshots.
2024-04-10 16:58:00 +01:00
Doug
c03db40859 Add more flexible background support to FullscreenDialog (#2675)
Hide the background when the main content extends underneath the bottom content.
2024-04-10 14:56:41 +01:00
Mauro
9c59039789 QR Code scan view (#2674) 2024-04-10 10:47:23 +00:00
Mauro
86c155e767 QR Code Login Initial view state (#2667) 2024-04-09 12:21:14 +02:00