Commit Graph

5881 Commits

Author SHA1 Message Date
Benoit Marty 1751920d42 Merge pull request #2392 from poljar/poljar/user-certs
Add the user certificates as additional certificates to the ClientBuilder
2024-02-22 10:51:44 +01:00
Benoit Marty f68087bc79 Merge pull request #2421 from element-hq/feature/bma/lastSessionRecovery
Last session recovery
2024-02-22 08:47:50 +01:00
renovate[bot] 155d52dc17 Update dependency androidx.compose.compiler:compiler to v1.5.10 (#2427)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-02-22 08:46:38 +01:00
Benoit Marty f35731a72f Merge pull request #2425 from element-hq/renovate/io.sentry-sentry-android-7.x
Update dependency io.sentry:sentry-android to v7.4.0
2024-02-21 18:48:06 +01:00
Benoit Marty 6548aafd23 Changelog 2024-02-21 18:39:21 +01:00
Benoit Marty d3d76ddd76 Cleanup after rebase. 2024-02-21 18:34:15 +01:00
Benoit Marty 1c4e02797b Fix test clicking on enter recovery key calls the expected callback 2024-02-21 18:30:57 +01:00
Benoit Marty 57900eadbf Add more tests on RoomListView 2024-02-21 18:30:57 +01:00
Benoit Marty 379cdb22fb Add tests on RoomListView (e2e banner) 2024-02-21 18:30:57 +01:00
Benoit Marty 7d41fbffbc Remove empty line. 2024-02-21 18:30:57 +01:00
Benoit Marty 8605efc3df Add tests on VerifySelfSessionView 2024-02-21 18:30:57 +01:00
Benoit Marty 849f1021fd Improve test framework. 2024-02-21 18:30:57 +01:00
Benoit Marty 67190bdd1d Fix parameter order. 2024-02-21 18:30:57 +01:00
Benoit Marty 3f7d4ae0e5 Fix compilation issue on minimal. 2024-02-21 18:30:57 +01:00
Benoit Marty 0927821219 Force a refresh of the verification status when the recovery state value change.
The session can become verified when the user enters their recovery key, and in this case the callback `didFinish` is not invoked.
2024-02-21 18:30:57 +01:00
Benoit Marty 661b9d8653 Keep references on TaskHandle, to avoid it to be garbage collected, and so the listeners are stopped. 2024-02-21 18:30:57 +01:00
Benoit Marty 6ddc2f5814 Make isLastSession "live" 2024-02-21 18:30:57 +01:00
Benoit Marty daa90a0660 Remove feature flag SecureStorage 2024-02-21 18:30:57 +01:00
Benoit Marty 99b8efbeff Go directly to the enter recovery key screen when coming from the banner which ask the user to do so. 2024-02-21 18:30:57 +01:00
ElementBot a495548ada Update screenshots 2024-02-21 18:30:08 +01:00
Benoit Marty 600557fd53 Remove unused val. 2024-02-21 18:30:08 +01:00
Benoit Marty 347edb67ab Fix tests. 2024-02-21 18:30:08 +01:00
Benoit Marty 4990aa38d3 Do not show the RecoveryKeyConfirmation banner if the sync is not Running. 2024-02-21 18:30:08 +01:00
Benoit Marty 4345f26d0b Add a way to enter recovery key to verify the session. 2024-02-21 18:30:08 +01:00
Benoit Marty 42e990e472 Do the opposite (was it a bug 🤔) 2024-02-21 18:30:08 +01:00
Benoit Marty e959ca0186 Do not show verification banner for the last device, show the enter recovery key banner. 2024-02-21 18:30:08 +01:00
Benoit Marty 663c7ceefe Sync strings. 2024-02-21 18:30:08 +01:00
Benoit Marty 4bc977d8dc Introduce SecurityBannerState to replace Boolean set.
Also get the sessionVerificationService from the matrixClient, instead of injecting it separately.
2024-02-21 18:30:08 +01:00
Benoit Marty 7ec876bc8a Rename isLastSession to isLastDevice, to match SDK naming. 2024-02-21 18:25:45 +01:00
ganfra 69776f96a4 Merge pull request #2426 from element-hq/feature/fga/room_list_empty_ui
RoomList : allow to show empty state and invites.
2024-02-21 17:38:53 +01:00
ganfra 747a61968a RoomList : allow to show empty state and invites. 2024-02-21 16:31:12 +01:00
renovate[bot] 2d52727851 Update dependency io.sentry:sentry-android to v7.4.0 2024-02-21 14:03:29 +00:00
Damir Jelić e9d3bfda45 Add a changelog fragment for the user-installed certs feature 2024-02-21 13:18:17 +01:00
Damir Jelić 73ba371a3e Add the user certificates as additional certificates to the ClientBuilder
Now, this is a story all about how
Certificates work in Android town
And I'd like to take a minute
Enter, close the door
I'll tell you how I've figured out the inner workings of the Keystore

Well it all boils down the fact that Google got scared
It said, "You're certs are movin' to a place you won't find".

So the directory, user certificates are stored, is hard to find, and possibly
not readable by your application[1]. Instead, we need to use the Keystore[2]
API, specifically we'll need to open the `AndroidCAStore` Keystore type.

The various Keystore types are supposedly documented[3], but I'm failing to
find a logical path that would lead you to conclude that:

    a) System certificates can or should be accessed using the Keystore,
       specifically the AndroidCAStore type
    b) User certificates can be found in the same Keystore type as the system
       certificates

So this was mostly found using random googling, swearing, and a couple of
educated guesses.

[1]: https://android-developers.googleblog.com/2016/07/changes-to-trusted-certificate.html
[2]: https://developer.android.com/reference/java/security/KeyStore
[3]: https://docs.oracle.com/en/java/javase/17/docs/specs/security/standard-names.html#keystore-types
2024-02-21 13:18:11 +01:00
Jorge Martin Espinosa 598bf96208 Do not display empty room list state before the loading one (#2402)
* Do not display empty room list state before the loading one
2024-02-21 12:16:00 +01:00
ganfra 7532f96c4f Merge pull request #2416 from element-hq/feature/fga/add_some_analytics
Analytics : add analytics on read status and favorite toggles
2024-02-20 13:51:33 +01:00
ganfra b814a101b5 Fix sample compilation 2024-02-20 10:59:13 +01:00
Jorge Martin Espinosa e68139bf46 Display banned users in room member list (#2415)
* Display banned users in room member list

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-02-20 10:07:06 +01:00
ganfra 9669f84766 Merge pull request #2417 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.3
2024-02-19 22:43:54 +01:00
ganfra d6c81c207c rust sdk : should fix test 2024-02-19 21:52:19 +01:00
ganfra f171dc94da rust sdk : fix api changes 2024-02-19 21:35:31 +01:00
renovate[bot] e40f5606af Update dependency org.matrix.rustcomponents:sdk-android to v0.2.3 2024-02-19 19:36:17 +00:00
ganfra e69b62bfa1 Merge branch 'develop' into feature/fga/add_some_analytics 2024-02-19 17:52:16 +01:00
ganfra 66030aeb64 Analytics : add analytics on read status and favorite toggles 2024-02-19 17:38:17 +01:00
Benoit Marty 72e5e4481f Merge pull request #2407 from element-hq/renovate/kotlin
Update kotlin
2024-02-19 16:28:09 +01:00
Benoit Marty 4daf2b0150 Merge pull request #2411 from element-hq/renovate/com.posthog-posthog-android-3.x
Update dependency com.posthog:posthog-android to v3.1.8
2024-02-19 16:16:52 +01:00
Benoit Marty 354e82d489 Merge pull request #2413 from element-hq/feature/bma/unitTests
Add more unit tests
2024-02-19 16:15:28 +01:00
Jorge Martin Espinosa 0a6f00e9df Sort the room member list and display member roles (#2412)
* Sort the room member list and display member roles

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-02-19 15:03:36 +00:00
Benoit Marty 4fc9947a9e Remove extra new line. 2024-02-19 14:17:18 +01:00
Benoit Marty 973aef4c72 Add test for RoomListEvents.ToggleSearchResults. 2024-02-19 13:52:01 +01:00