Benoit Marty
236725dfb2
Merge try blocks.
2024-02-22 16:06:01 +01:00
Benoit Marty
f29f46b9e9
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
Benoit Marty
f1790c9a7a
Move getAdditionalCertificates function to a dedicated class (no change in the implementation).
2024-02-22 11:09:55 +01:00
Benoit Marty
7efef9441b
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
8d8cbab17e
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
2381c0cdcd
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
06caf35ff4
Make isLastSession "live"
2024-02-21 18:30:57 +01:00
Damir Jelić
237235c17e
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
e7ed466b4f
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
Jorge Martin Espinosa
c5dcd419ce
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
2934682e57
rust sdk : fix api changes
2024-02-19 21:35:31 +01:00
Jorge Martin Espinosa
87823fe8a4
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
ganfra
1c5f0389f7
RoomList : clean after PR review
2024-02-19 12:08:11 +01:00
ganfra
85a0ef3677
RoomList : rework how search is done to prepare for later filtering
2024-02-16 19:35:03 +01:00
ganfra
e00311a739
Merge branch 'develop' into feature/fga/mark_room_as_favorite
2024-02-15 10:16:43 +01:00
ganfra
7e0e0f9ec4
read : use the new apis
2024-02-14 11:09:46 +01:00
ganfra
cc5355a049
Merge branch 'develop' into feature/fga/mark_room_as_favorite
2024-02-12 17:08:36 +01:00
Benoit Marty
7f5a63bf79
Merge pull request #2374 from element-hq/feature/bma/typingRendering
...
Typing notification rendering
2024-02-09 22:29:14 +01:00
Benoit Marty
eecb61c2d7
Fix formatting issue.
2024-02-09 10:43:08 +01:00
Benoit Marty
21d6ea1dbb
Fix compilation warning.
2024-02-09 10:12:50 +01:00
ganfra
c31fe091b0
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
8496c736b6
Rendering typing notification #2242
2024-02-08 17:38:59 +01:00
Benoit Marty
e73a480495
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
3160596659
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
ca91b23512
Add ability mark as unread / mark as read a room.
2024-02-08 11:33:43 +01:00
Benoit Marty
125da04192
Extract session folder name computation from RustMatrixClient
2024-02-07 16:33:48 +01:00
Benoit Marty
79b8a628b1
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
b70cbfeb63
Use the new setIsFavorite api
2024-02-06 16:04:44 +01:00
Benoit Marty
6234d6e092
Fix API break and change from SDK 0.1.97
2024-02-06 09:18:35 +01:00
ganfra
7ca931c35f
Favorite : rework and add tests
2024-02-02 14:54:28 +01:00
Jorge Martín
038bcc6f94
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
34d7657e19
Use MatrixRoom.isEncrypted value to enable encryption in room calls
2024-02-01 11:49:17 +01:00
ganfra
a63d331f36
favorite : branch RoomNotableTags methods
2024-01-31 21:24:37 +01:00
renovate[bot]
f36d3cae89
Update dependency org.matrix.rustcomponents:sdk-android to v0.1.96 ( #2323 )
...
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.96
* Fixes for the SDK upgrade
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io >
2024-01-31 11:07:34 +00:00
Jorge Martin Espinosa
47f7f8952b
Add missing device id to settings screen ( #2320 )
...
* Add missing device id to settings screen
* Extract footer component
* Restore `@PreviewWithLargeHeight` logic
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io >
2024-01-31 10:01:17 +00:00
Jorge Martin Espinosa
38fdef0388
Fix crash about several DataStores using the same file ( #2312 )
...
* Fix crash about several DataStores using the same file
- Create `@SessionCoroutineScope` annotation to pass a session-managed coroutine scope to the DI.
- Expose this scope from `MatrixClient`.
- Rework DataStore file creation a bit.
- Centralise session preference creation through `DefaultSessionPreferencesStoreFactory` until we figure out what went wrong with the scoping
2024-01-30 11:10:46 +01:00
Benoit Marty
444954bad9
Merge pull request #2293 from element-hq/feature/bma/notificationCount
...
Iterate on notification badges
2024-01-30 10:33:17 +01:00
Benoit Marty
2ef8f67951
Send typing notification #2240
2024-01-26 16:30:43 +01:00
Benoit Marty
6bf1806ed4
Disambiguate display name in notifications #2224
2024-01-25 18:43:56 +01:00
Benoit Marty
fe0e82b5d6
Map roomInfo.numUnreadNotifications to RoomSummaryDetails.numUnreadNotifications
2024-01-25 15:00:43 +01:00
Jorge Martin Espinosa
f9c5cd07a9
Return cached room members before fetching new ones, do it in batches ( #2274 )
...
* Use cached users from the Rust SDK.
Also lazy load received users by batches.
* Create `RoomMemberListFetcher` to wrap all the room member loading logic
* Ensure we clear `RoomMember` Rust references if the fetching coroutine is canceled
2024-01-23 18:23:20 +01:00
Benoit Marty
cdbfe8f92c
Fix API break: use new methods canUserRedactOwn and canUserRedactOther.
2024-01-23 13:32:13 +01:00
Benoit Marty
ca1f907ec5
Use new Rust fields numUnreadMessages and numUnreadMentions, and iterate on the room badge rendering.
2024-01-22 15:48:46 +01:00
Benoit Marty
f42e220d55
Merge pull request #2130 from element-hq/feature/bma/roomListBadge
...
Some rework on the codebase
2024-01-22 10:17:38 +01:00
Benoit Marty
5e5eddd537
Merge pull request #2244 from element-hq/feature/bma/encryptedDb2
...
Encrypted db
2024-01-19 17:40:23 +01:00
Jorge Martin Espinosa
ac3201b317
Remove some state events at the start of DMs ( #2252 )
...
* Remove some initial events for DMs
2024-01-19 17:34:27 +01:00
Benoit Marty
82a3750cd8
Remove notificationMode to userDefinedNotificationMode to match SDK name.
2024-01-19 16:46:42 +01:00
Benoit Marty
9b3a0c1f08
Remove hasOngoingCall to hasRoomCall to match SDK name.
2024-01-19 16:16:57 +01:00
Benoit Marty
371aec4427
Remove RoomSummaryDetails.lastMessageTimestamp and replace by a getter on lastMessage
2024-01-19 16:11:10 +01:00
Benoit Marty
0e57fbf352
Rename userAvatarURLString to userAvatarUrl
2024-01-19 15:59:50 +01:00