Commit Graph

144 Commits

Author SHA1 Message Date
Valere
a9fddb5dbb crypto: Add configuration flag to enable invisible crypto (#3247) 2024-09-18 16:30:45 +01:00
Doug
d1495f3178 Make the SessionDirectories type responsible for cleaning up data. (#3261) 2024-09-11 14:32:03 +01:00
Doug
c1cf7e8382 Add iOS 18 to the Introspect supported versions. (#3248) 2024-09-10 13:24:17 +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
eff3dd7cc3 Replace Prefire with a very similar but simpler and more direct approach (#3232)
* Replace Prefire with a very similar but simpler and more direct approach

* Move PreviewTest snapshots to their new location (snapshotting default, mirrors UITests)

* Update acknowledgements

* Switch snapshot configuration extensions to a custom version

* Exclude snapshots from the PreviewTests target

* Fix acknowledgements

* Rename snapshotting preference keys

* Remove `skipPackagePluginValidation`
2024-09-09 15:07:41 +03: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
Doug
b171612ab7 Adopt sliding sync discovery for authentication. 2024-08-30 14:45:54 +03:00
Doug
a510688a75 Update the default timeout to match the SDK as the value kills download tasks 🤦‍♂️ (#3205)
This new value isn't great either but there's a balance to be made.
2024-08-27 12:55:58 +01:00
Doug
a3e66d3e7e Update the SDK (#3196)
* Update the SDK.

* Fix API breaks on send failures and propagate the new type.

* Handle new SDK ShieldState.

* Set up the ClientBuilder's `cachePath` option.

* Delete the cacheDirectory during logout/clearCache.

* Add unit tests for RestorationToken decoding and SessionDirectories generation.
2024-08-27 11:06:26 +01:00
Doug
039cc1621f Remove delivered notifications if their event gets redacted. (#3191) 2024-08-22 13:49:00 +01:00
Doug
6a44d79b6e Use native video call picture in picture! (#3190)
* Use native video call picture in picture!

* Handle isSupported, isPossible and web view errors.

* Use new canEnterPip method.

* Hide a room's Call button when already joined to the call.

* Tweak feature flag description.

* PR comments.
2024-08-21 17:48:57 +01:00
Stefan Ceriu
40bf8a460d Automatically try reloading failed images on network changes (#3170)
* Add the networkMonitor to the NSE and delete the old MockMediaLoader

* Generate a MediaLoaderMock through AutoMockable and use it in the MediaProviderTests

* Implement an ImageProvider mechanism that automatically tries reloading images when connectivity is established again and use it for LoadableImages

* Merge the ImageProvider protocol back into the MediaProvider

* Address PR review comments

* Provide a default sdk client request configuration

* Address tasks not automatically cancelling themselves when views get deallocated
2024-08-15 18:20:19 +03:00
Doug
16e5c3e1a5 Rotate the session directory each time a new client is built for authentication. 2024-08-12 12:23:29 +01:00
Mauro
28bfa3f5dc Pinned items timeline implementation for the banner (#3099) 2024-08-05 14:09:05 +02:00
Mauro
30351a7712 Pin/Unpin Logic (#3084) 2024-07-26 20:41:00 +02:00
Doug
94c9a04474 Automatically sign out when toggling the SSS feature flag. (#3071) 2024-07-23 11:55:51 +01:00
Doug
17a86a2066 Add a certificate validator hook. (#3069)
* Add a certificate validator hook.

* General tidy up of AppHooks.

* Don't worry about the generic call links.
2024-07-19 17:05:54 +01:00
Doug
a141532355 Add a feature flag for Simplified Sliding Sync. (#3057)
* Disable SSS when logging out.

* Bump the SDK.
2024-07-18 10:16:51 +01:00
Doug
de07f441f0 Add a ClientBuilder hook. (#3056) 2024-07-18 09:47:37 +01:00
Doug
8eae8decaf Fix stuck unread indicators. (#3023)
* Update the SDK (fixes stuck unread indicators).

* Use the SDK's cached server versions too.
2024-07-10 16:54:10 +00:00
Doug
99309ddfd2 Use a Client in AuthenticationService now that the Rust one has been removed. (#2954)
* Replace Rust's Authentication service by building a Client.

* Drop the Proxy from AuthenticationServiceProxy[Protocol].

* Make sure to call abortOIDCLogin.

* Centralise common ClientBuilder code.

* Update the SDK.
2024-06-24 15:05:00 +01:00
Stefan Ceriu
f2503f252d Fixes #2679 - Timestamps in room list inconsistently use absolute and relative formatting 2024-06-19 14:38:00 +03:00
Stefan Ceriu
5cf3a4477e Fix various swiftlint and swiftformat warnings 2024-06-11 18:09:43 +03:00
Stefan Ceriu
4a56fa75ad Cleanup dead code after Periphery run 2024-06-11 14:38:08 +03:00
Mauro
3505486016 removed useless qr logs (#2886) 2024-05-29 17:22:28 +02: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
Stefan Ceriu
4b4c43ba06 Stop relying on the NotificationCenter for removing delivered push notifications:
- this will improve the architecture but more importantly will remove some very flakey unit tests
2024-04-12 19:18:00 +03:00
Stefan Ceriu
30c2796372 UI test cleanup (#2598)
* Stop running the UI tests on the double localized pseudolanguage

* Fix UI tests signalling comms problem because the json key ordering wasn't defined and the messages wouldn't match.

* Remove UI tests that are now the same as preview tests (i.e. non flow based, only screen based), fixed the rest so they run on iOS 17.2, the iPhone 15 and iPad 10th gen simulators.

* Remove unnecessary gitignore instructions, change UI test snapshot naming convention to be more similar to the unit test ones

* Enable derived data and spm checkout caching for UI tests

* Switch UI tests back to the perf-only runner, moved the integration tests to the iPhone 15 Pro simulator.

* Address PR comments
2024-03-25 17:34:11 +02:00
Mauro
1137f80c19 Filters UI Update and ordering (#2521) 2024-03-04 18:32:59 +01:00
Doug
4728179f8e Update Compound. (#2514)
Fixes a bug with placeholder avatar rendering in Notifications.
2024-03-01 13:14:52 +00:00
Mauro
dc14accbef Configure SDK to use the global/OS proxy (#2493) 2024-02-21 15:17:23 +01:00
Stefan Ceriu
21c3ab12c7 Fix localization bundle and attributed string builder crashes on unsynchronised access to their internal caches 2024-02-15 12:20:37 +02:00
Stefan Ceriu
842b4d4cca Update AttributedStringBuilderComponent identifiers, fix layout issues 2024-01-12 10:49:14 +02:00
Stefan Ceriu
f8fb77017a Fixes #2314 - Tweak avatar animations to increase perceived load times 2024-01-10 16:57:37 +02:00
Stefan Ceriu
dde4b6cd7e Various integration test tweaks following test homeserver and account change 2024-01-10 16:57:25 +02:00
Stefan Ceriu
075ff355cf Fixes #2286 - Timeline entries flickering when a lot of mention pills present 2024-01-08 12:04:29 +02:00
Stefan Ceriu
9172f76fdf Fixes #2291 - Wrong notification placeholder avatar orientation on 17.2.1 2024-01-08 12:03:31 +02:00
Mauro
bc97bdeea5 Removing dead code part 3 (#2264) 2023-12-19 12:12:16 +01:00
Stefan Ceriu
a5043cbd69 Fixes #2259 - Fix flipped notification placeholder avatars on iOS 17.2+ 2023-12-18 17:56:19 +02:00
Mauro
a705d18ba6 Removing dead code part 2 (#2235)
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-12-15 20:16:16 +01:00
Mauro
84b0f967e8 Removing Dead Code part 1 (#2234) 2023-12-13 09:51:57 +01:00
Mauro
79447b1f25 Periphery to detect dead code (#2227) 2023-12-12 10:17:15 +00:00
Mauro
3ebe757583 Fix for line breaks (#2224) 2023-12-11 15:43:31 +00:00
Mauro
e3effeadff Using thumbnails for notification icons (#2142) 2023-11-22 13:06:54 +01:00
Doug
0cbba1b04c Use more Compound icons (part 2!) (#2082)
* Use Compound icons in ListRow.

* Add CompoundIcon(asset:) convenience initialiser.
2023-11-15 09:54:43 +00:00
Mauro
3f8c246be2 Custom copy for notifications that contain mentions (#2050) 2023-11-09 18:12:11 +00:00
Doug
0bd097fe25 Add UI tests for optional app lock setup. (#2046) 2023-11-08 15:33:40 +00:00
Mauro
9299bfde13 Fix Suggestion Pattern when text is empty (#1943)
* fix + debounce improvement

* comment

* improved existing function to be more generic
2023-10-23 17:52:10 +02:00
Mauro
ac89f506c9 @room in user suggestions (#1880)
* for now I am using a local RTE solution, need to fix one test

* fixed a test

* new rte version

* pr suggestions

* @room added to the suggestions

* removed empty space

* revert

* code improvement

* project updated

* package
2023-10-12 16:15:47 +00:00
Stefan Ceriu
8069d36249 Various optimisations (#1878)
* Cache TimelineBubbleLayout subview sizes

* Cache MessageText sizes, avoid extra updates

* Only use the `CollapsibleReactionLayout` if there's more than 5 reactions on a particular message

* Upgrade Sentry to 8.13.0, disable various options as they're not useful and impact performance

* Address PR comments, fix unit tests
2023-10-11 16:21:45 +03:00