Jorge Martin Espinosa
e4aed6b56c
Fix crash when leaving room using LeaveRoomPresenter ( #2498 )
...
This happened because `roomInfoFlow` was shared eagerly and the `initial` part was called after the `Room` Rust object was destroyed.
I think there isn't a need for room info to be shared, it was a mistake I forgot to rollback.
2024-03-06 16:39:44 +00:00
Jorge Martin Espinosa
134cacb024
Room member moderation: kick, ban and unban ( #2496 )
...
* Room member moderation: kick, ban and unban
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-06 16:44:05 +01:00
Jorge Martin Espinosa
b9d902e3fe
Room admins can change user roles ( #2423 )
...
Allow Admins to modify room member roles:
- Add a 'roles and permissions' option for each room.
- Allow promoting users to admins, adding or removing moderators, and demote yourself if you're and admin.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-05 16:46:47 +00:00
Jorge Martin Espinosa
1d892b4bc8
Add extra params to bug reports ( #2490 )
...
* Add extra params to bug reports
- `local_time`: the time in the device's timezone.
- `utc_time`: the time in UTC.
- `sdk_sha`: the commit SHA that was used to build the Rust SDK
2024-03-05 17:21:47 +01:00
Timo Kösters
38cea8e68e
Faster member list by avoiding many FFI calls ( #2322 )
...
* Faster member list by avoiding many FFI calls
2024-03-05 10:41:51 +01:00
renovate[bot]
05ca8c959b
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.6 ( #2482 )
...
* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.6
* Update SDK changes
* Fix tests
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2024-03-04 17:01:31 +00:00
ganfra
bd87e99df1
RoomListFilters : use kotlin filtering as rust one is slower and has more chance to bust the room list cache.
2024-02-27 16:24:54 +01:00
Jorge Martin Espinosa
cdf89adcd2
Show blocked users list ( #2437 )
...
* Show blocked users list.
Also allow to unblock them from this list.
* Add non-blocking `AsyncIndicatorHost` component
* Use `StateFlow` for getting ignored users.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-02-26 15:24:22 +00:00
Benoit Marty
0994960b79
Log the fact that the application is using the global proxy.
2024-02-26 11:01:01 +01:00
Benoit Marty
d169388a80
Also log the filter value.
2024-02-26 10:21:13 +01:00
Benoit Marty
ec007a2b21
Provide global proxy to the SDK
2024-02-23 11:49:35 +01:00
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
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
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
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
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
9d461a4917
Add ability mark as unread / mark as read a room.
2024-02-08 11:33:43 +01:00
Benoit Marty
57d9b262d3
Extract session folder name computation from RustMatrixClient
2024-02-07 16:33:48 +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