Commit Graph

805 Commits

Author SHA1 Message Date
ganfra 57f99a9090 Merge pull request #2422 from element-hq/feature/fga/room_list_filters
[Feature] Room list filters
2024-02-22 22:59:28 +01:00
Benoit Marty a9c1fe5c42 Merge pull request #2429 from element-hq/feature/bma/testRecoveryKey
Test recovery key
2024-02-22 17:37:11 +01:00
Benoit Marty d8812fff77 Merge pull request #2432 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.4
2024-02-22 17:36:03 +01:00
Jorge Martín 9198cb19ac Add null proxy parameter to RustAuthenticationService 2024-02-22 17:01:27 +01:00
Benoit Marty 9fed868968 Merge try blocks. 2024-02-22 16:06:01 +01:00
Benoit Marty 7d4cf6d574 Create extensions backupStateFlow() and recoveryStateFlow. 2024-02-22 12:37:44 +01:00
Benoit Marty a3f7d55a64 Safer code, add some try catch blocks.
Filter out system alias before reading the keyStore entry.
use `size` instead of `count()`
Kotlin style.
2024-02-22 12:06:54 +01:00
ganfra f18e8030bf Merge develop into feature/fga/room_list_filters 2024-02-22 11:15:43 +01:00
Benoit Marty fd555b1070 Move getAdditionalCertificates function to a dedicated class (no change in the implementation). 2024-02-22 11:09:55 +01:00
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 26ea71193f Use mxCallbackFlow 2024-02-22 09:11:08 +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 347edb67ab Fix tests. 2024-02-21 18:30:08 +01:00
ganfra 5868a46e82 Merge develop into feature/fga/room_list_filters 2024-02-21 13:20:40 +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 33664c44ec RoomListFilters : branch the logic 2024-02-20 11:17:15 +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 f171dc94da rust sdk : fix api changes 2024-02-19 21:35:31 +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 f372fd27cf Add test for RoomListEvents.DismissRecoveryKeyPrompt.
Also get the encryptionService from the matrixClient, instead of injecting it separately.
2024-02-19 13:36:08 +01:00
ganfra bdb660f346 RoomList : clean after PR review 2024-02-19 12:08:11 +01:00
ganfra ebb07de8a4 RoomList : rework how search is done to prepare for later filtering 2024-02-16 19:35:03 +01:00
ganfra 00f8e32df6 Merge branch 'develop' into feature/fga/mark_room_as_favorite 2024-02-15 10:16:43 +01:00
ganfra 6dc0d8706c read : use the new apis 2024-02-14 11:09:46 +01:00
ganfra a8bc0cb4ca Merge branch 'develop' into feature/fga/mark_room_as_favorite 2024-02-12 17:08:36 +01:00
Benoit Marty b8d9c89ec4 Merge pull request #2374 from element-hq/feature/bma/typingRendering
Typing notification rendering
2024-02-09 22:29:14 +01:00
Benoit Marty 3ea448e6bb Fix formatting issue. 2024-02-09 10:43:08 +01:00
Benoit Marty 7831311d14 Fix compilation warning. 2024-02-09 10:12:50 +01:00
ganfra 76cd6ecaef Rust : fix tests for the new filter api 2024-02-08 21:03:18 +01:00
ganfra 2c24a48ed7 Rust : map the new filter api, will need more rework when branching the new ui later. 2024-02-08 20:46:27 +01:00
Benoit Marty 5d6716da67 Rendering typing notification #2242 2024-02-08 17:38:59 +01:00
Benoit Marty d5c123622b Merge pull request #2354 from element-hq/feature/bma/markUnread
Mark room as unread
2024-02-08 17:36:29 +01:00
Jorge Martín e77740f1d2 Remove FilterHiddenStateEventsProcessor
The same process is already done by the Rust SDK, so it's now redundant.
2024-02-08 13:38:05 +01:00
Benoit Marty 17f23304d0 Give 0 has default value for fixtures creators.
Also increases the readability of tests.
2024-02-08 11:34:54 +01:00
Benoit Marty 9d461a4917 Add ability mark as unread / mark as read a room. 2024-02-08 11:33:43 +01:00
Jorge Martin Espinosa c864adb493 Merge branch 'develop' into poljar/log-olm-trace 2024-02-08 09:50:58 +01:00
Benoit Marty 57d9b262d3 Extract session folder name computation from RustMatrixClient 2024-02-07 16:33:48 +01:00
Damir Jelić 1fd4075900 Enable trace logging for the Olm Account
This should help us to track down UTD sources, it ensures that we log
the state of a Olm session when we try to decrypt an `m.olm.*` to-device
message.
2024-02-07 10:46:34 +01:00
Benoit Marty 46ff038b98 Merge pull request #2341 from element-hq/fix/jme/forwarding-with-new-timeline-api
Fix message forwarding after SDK API change
2024-02-06 16:11:40 +01:00
ganfra f3c1eb6738 Use the new setIsFavorite api 2024-02-06 16:04:44 +01:00
Benoit Marty 8c56f0bd92 Fix API break and change from SDK 0.1.97 2024-02-06 09:18:35 +01:00
ganfra d9017a098c Favorite : rework and add tests 2024-02-02 14:54:28 +01:00
Jorge Martín 686d58ee0a Fix message forwarding after SDK API change
Created `Room.fullRoomWithTimeline` helper to always get an initialized timeline with the room object.
2024-02-02 11:34:12 +01:00
Jorge Martín 90e640e738 Fix test fixtures 2024-02-01 12:19:25 +01:00
Jorge Martín 5c59ecbaa6 Use MatrixRoom.isEncrypted value to enable encryption in room calls 2024-02-01 11:49:17 +01:00
ganfra b15597509d favorite : branch RoomNotableTags methods 2024-01-31 21:24:37 +01:00