Commit Graph

1761 Commits

Author SHA1 Message Date
ganfra
1234b91a6a Merge pull request #5832 from element-hq/feature/fga/fix_owner_admin_displayed_twice
fix: usersWithRole(Owner) returns creators only if privilegedCreatorRole is true
2025-12-03 18:19:20 +01:00
ganfra
147c49e99a quality: remove useless parenthesis
Co-authored-by: Benoit Marty <benoitm@element.io>
2025-12-03 17:45:37 +01:00
ganfra
42e3a62ab1 Merge pull request #5826 from element-hq/feature/fga/hide_banned_members_name
change(room member): make sure we never display name/avatar when member is banned
2025-12-03 17:19:30 +01:00
ganfra
a91c78b56f fix: rely only on RoomMember Role values instead of using the powerLevel. 2025-12-02 21:42:29 +01:00
Jorge Martin Espinosa
33694f0ff0 Upgrade the Rust SDK to v25.12.2 (#5838)
* Upgrade the Rust SDK to `v25.12.2`
2025-12-02 17:12:56 +00:00
Jorge Martin Espinosa
77be19bf3b Load JoinedRoom in home screen, pass it to the room flow (#5817)
* Load `JoinedRoom` in `HomeFlowNode.navigateToRoom`, then pass it to the next navigation nodes

* Add delayed loading indicator for cases when loading the room takes too long

* Avoid an extra FFI call in `RustRoomFactory`.

Use `RoomInfo.membership` instead.

Also use `computation` dispatcher, since it should reduce the delay when switching contexts.

* Remove the dispatcher usage when loading the room in `HomeFlowNode`, we immediately call a method that changes the dispatcher used

* Make sure only a single room is opened at a time
2025-12-02 15:22:55 +00:00
Jorge Martín
29117ce93d Add AnalyticsService.cancelLongRunningTransaction and AnalyticsService.finishLongRunningTransaction 2025-11-28 14:15:54 +01:00
Jorge Martín
93feed38bf Add transaction trees for opening a room so we can have a nice trace view 2025-11-28 14:15:54 +01:00
Jorge Martín
766c23721e Have long running analytic transactions return actual transactions.
Also add `AnalyticsService.getLongRunningTransaction` and change `AnalyticsService.stopLongRunningTransaction` to `removeLongRunningTransaction`.
2025-11-28 14:15:54 +01:00
ganfra
d7bbf8f566 change(room member): make sure we never display name/avatar when a member is banned 2025-11-27 18:08:00 +01:00
Benoit Marty
74b04f47ed Room list: enable latest event sorter. 2025-11-27 14:55:19 +01:00
ganfra
c432a3080e deps: fix api break 2025-11-26 17:03:27 +01:00
ganfra
ca526580fd misc : use new_latest_event api (+ some renaming) 2025-11-26 10:58:16 +01:00
ganfra
8a599a1e51 deps(sdk) : add fallbackToServer on userIdentity api. 2025-11-24 20:22:11 +01:00
Benoit Marty
966eab8796 Fix roleOf extension. Creator are Owner Role only if privilegedCreatorRole is true. 2025-11-20 17:41:01 +01:00
ganfra
f4f129f420 Merge branch 'develop' into renovate/org.matrix.rustcomponents-sdk-android-25.x 2025-11-19 13:10:18 +01:00
ganfra
f5d450e68b deps(sdk): fix api usages 2025-11-19 13:07:59 +01:00
Jorge Martin Espinosa
c6c2f4a267 Add some performance metrics for Sentry (#5760)
- Add `AnalyticsService.startTransaction(...)` to start a logging transaction that can be uploaded to Sentry if the user enabled the analytics upload.
- Add `AnalyticsTransaction` wrapper to abstract the Sentry ones.
- Added several helper methods to improve the UX around these transactions.
- Then measure:
  - Time until the first sync, and how it ended.
  - Time until the first rooms are displayed.
  - Time to load a room or a preview.
  - Time to load a timeline.
2025-11-19 11:42:55 +00:00
Benoit Marty
d8cacba43a Improve API: use RoomId instead of String. 2025-11-19 10:14:03 +01:00
Benoit Marty
88f0111137 Ensure in test that rooms are sorted. 2025-11-19 10:14:03 +01:00
Benoit Marty
b54b077125 Merge pull request #5755 from element-hq/feature/bma/cleanupDb
Remove unused `slidingSyncProxy` from DB.
2025-11-18 17:42:09 +01:00
Benoit Marty
7cbc616bef Remove unused import. 2025-11-18 16:42:34 +01:00
Benoit Marty
de2ab5a557 Merge pull request #5722 from element-hq/feature/bma/moduleCleanup
Module cleanup
2025-11-18 16:14:10 +01:00
Benoit Marty
5728452e68 Remove unused slidingSyncProxy from DB. 2025-11-18 15:58:22 +01:00
Jorge Martin Espinosa
5a5c0b16ca Revert "Stop overriding the homeserver when restoring a Client (#5753)" (#5754)
This reverts commit a0a3a30aa3.
2025-11-18 15:16:34 +01:00
Jorge Martin Espinosa
a0a3a30aa3 Stop overriding the homeserver when restoring a Client (#5753)
This isn't necessary and overrides the existing data previously saved by the SDK, resulting in losing data such as the `Client::server` (the discovery server URL).

In turn, this caused the app to be unable to refresh the server info in some homeservers.
2025-11-18 11:48:42 +01:00
Jorge Martin Espinosa
2b5c94cf9a Add media retention policy (#5749)
* Add media retention policy.

Add `ByteSize` class to help with conversions between byte units.

* Use bit shifting instead of multiplication

Improve the tests too
2025-11-18 07:53:45 +00:00
Benoit Marty
42e91a3395 @Inject is not necessary here. 2025-11-17 21:35:56 +01:00
ganfra
24851f2e32 change(room members): address PR reviews 2025-11-14 12:27:45 +01:00
ganfra
3086d1e8e3 quality : format code 2025-11-13 16:00:07 +01:00
ganfra
fbb906fd64 Merge branch 'develop' into feature/fga/members_improvements 2025-11-13 14:30:29 +01:00
Benoit Marty
6284753e59 Fix tests 2025-11-12 23:04:55 +01:00
Benoit Marty
b3ec256dfa API modules do not need to setup dependency injection.
Move the implementation to the impl modules.
2025-11-12 19:05:39 +01:00
ganfra
a3c81d5f25 change(room members): makes sure to subscribe to timeline items changes 2025-11-12 17:53:52 +01:00
renovate[bot]
dda1ef7df8 Update dependency org.matrix.rustcomponents:sdk-android to v25.11.11 (#5716)
* Update dependency org.matrix.rustcomponents:sdk-android to v25.11.11

* Fix API breaks:
  - `Client.loginWithQrCode` is now `Client.newLoginWithQrCodeHandler`.
  - Rust's `OtherState` can now have `RoomCreate` and `RoomHistoryVisibility` values.
  - Fix fixtures

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-11-11 15:29:37 +00:00
SpiritCroc
4074556b6f Fix rendering notifications if event ID is duplicated (#5711) 2025-11-10 21:54:09 +01:00
Benoit Marty
1292da2a72 Copyright: Add Element Creations Ltd. copyright 2025-11-10 11:05:05 +01:00
Benoit Marty
b748fcc631 Copyright: Add final period 2025-11-10 10:13:41 +01:00
Benoit Marty
0a0224b586 Copyright: run command uv run license-editor --repository ../element-x-android 2025-11-10 10:09:26 +01:00
Benoit Marty
3e567d9b5a Merge pull request #5692 from element-hq/feature/bma/loginFlow
Improve account provider selection during the login flow
2025-11-07 16:48:03 +01:00
Benoit Marty
3e60c71701 Use isNull() 2025-11-07 11:05:13 +01:00
Benoit Marty
a7f3fb9c38 Avoid usage of not() and add unit tests. 2025-11-07 10:18:45 +01:00
Benoit Marty
9e8fe55a90 Improve error mapping 2025-11-07 10:08:14 +01:00
Benoit Marty
a39b675cc1 Improve error mapping 2025-11-07 09:52:04 +01:00
Benoit Marty
6006537bdc Remove A_HOMESERVER and A_HOMESERVER_OIDC from TestData and replace by local fun aMatrixHomeServerDetails(). 2025-11-06 15:38:37 +01:00
Benoit Marty
47f7eeff07 MatrixHomeServerDetails does not need to be Parcelable 2025-11-06 14:32:00 +01:00
Benoit Marty
04584412f9 Fix test 2025-11-06 14:27:20 +01:00
ganfra
c08f4a183c Merge branch 'develop' into feature/fga/role_and_permissions_rework 2025-11-06 13:51:04 +01:00
Benoit Marty
786d6f5642 Do not override the value of url returned by the SDK 2025-11-06 12:29:08 +01:00
Benoit Marty
6d252c0b20 MatrixAuthenticationService: remove fun getHomeserverDetails(): StateFlow<MatrixHomeServerDetails?>. The MatrixHomeServerDetails are now return by setHomeserver 2025-11-06 12:22:48 +01:00