Commit graph

847 commits

Author SHA1 Message Date
Benoit Marty
8e7fdc859c Code quality and remove reference to DefaultMatrixToConverter.SUPPORTED_PATHS in MatrixToConverter 2024-04-02 15:51:59 +02:00
Benoit Marty
2a248417fa Move Event exclusion to the module appconfig.
It has to become an android module to be able to add a dependency on : libraries:matrix:api.
2024-04-02 14:35:58 +02:00
Benoit Marty
1e5a61a49c Move PermalinkBuilder, MatrixToConverter and PermalinkParser content to the impl project in order to remove projects.appconfig dependency from matrix.api module. 2024-04-02 14:15:54 +02:00
ganfra
a9f326c81c
Merge pull request #2620 from element-hq/feature/fga/room_directory
Feature/fga/room directory
2024-03-29 16:54:27 +01:00
ganfra
5f8b74055d RoomDirectory : address pr reviews 2024-03-29 11:37:00 +01:00
Benoit Marty
e5db80b0eb Compact code. 2024-03-28 18:14:31 +01:00
Benoit Marty
31e95b1634 Fix crash observed when going back to the room list.
Protect MatrixRoom access when the room is disposed.
2024-03-28 18:14:31 +01:00
ganfra
3f1f764745 Room directory : add tests and cleanup 2024-03-28 17:03:34 +01:00
ganfra
37d645d153 Merge branch 'develop' into feature/fga/room_directory 2024-03-28 16:15:04 +01:00
Benoit Marty
46008c2887 Fix analytics: spaceId have the same syntax as roomId. Use MatrixRoom.isSpace instead of MatrixPatterns.isSpaceId (#2612)
Also remoce useless orFalse() calls.
2024-03-28 12:13:49 +01:00
ganfra
b900818001 RoomDirectory : continue improving interactions 2024-03-27 12:51:36 +01:00
ganfra
90b2a65c1a Room directory : implement simple join room 2024-03-26 12:32:15 +01:00
ganfra
e4c7118428 Room directory : fix pagination and add empty state. 2024-03-25 18:21:03 +01:00
ganfra
4c5ae6ae4b RoomDirectory : continue implementing the search 2024-03-25 11:17:19 +01:00
Jorge Martín
9f2726ec4f Only retrieve active users in RoomMemberListDataSource 2024-03-22 10:14:22 +01:00
ganfra
01e6b46323 Room Directory : start exposing the matrix apis 2024-03-21 19:14:05 +01:00
Jorge Martin Espinosa
6aa84d600e
Implement MSC2530 (#2570)
* Implement MSC2530
* Some layout improvements for images and videos with captions
* Update screenshots
* Replace `it` in several previews with `isMine`

---------

Signed-off-by: Marco Antonio Alvarez <surakin@gmail.com>
Co-authored-by: Marco Antonio Alvarez <surakin@gmail.com>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-20 13:58:29 +01:00
Jorge Martín
cc9c04b1a3 Fix SDK integration 2024-03-20 09:36:35 +01:00
Jorge Martin Espinosa
5cc5a0b699
Add isInDebug variable to simulate debug/release configs for tests (#2566)
* `isInDebug` as `ThreadLocal<Boolean>`

* Use a simple var for `isInDebug` and add a helper method to test release mode, when running the debug test.

* Add some more docs

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-03-18 17:56:07 +01:00
Benoit Marty
fb64018110
Merge pull request #2565 from element-hq/feature/bma/userDataCache
Read user avatar from cache
2024-03-18 17:33:26 +01:00
Jorge Martin Espinosa
883d834284
Remove unnecessary Room.updateMembers() calls. (#2564)
* Remove unnecessary `updateMembers` calls.

Some of them can be directly removed since we have a way to automatically get member info updates based on membership changes.

Others can be replaced by a simpler `getUpdatedMember` method. This might still need a full member sync, but it's quite unlikely.
2024-03-18 14:57:25 +00:00
Benoit Marty
68fd649424 Use client.cachedAvatarUrl(), to be able to render the user avatar faster, and even if there is no network (#2488). 2024-03-18 15:02:54 +01:00
Benoit Marty
72b814f5a7
Merge pull request #2544 from element-hq/feature/bma/trackUtd
Track UTD errors.
2024-03-15 14:11:29 +01:00
Benoit Marty
a9e67c070d Improve UtdTracker test. 2024-03-15 12:33:54 +01:00
Benoit Marty
87dd1cd4c1 Add unit test on UtdTracker 2024-03-15 12:29:38 +01:00
Benoit Marty
27bb46511b Improve crypto error content. 2024-03-15 09:41:43 +01:00
Benoit Marty
5c948ed0ba Track UTD errors. 2024-03-14 17:03:50 +01:00
Jorge Martin Espinosa
67d79059f8
Add legacy call invite state events and notifications (#2552)
* Add state timeline events and notifications for legacy call invites

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-14 16:29:06 +01:00
Jorge Martin Espinosa
e3a395f15a
Improve room member list loading UX (#2543)
Improve room member list UX:

- Don't display the list in chunks anymore.
- Use an indeterminate linear progress indicator to display some loading is being done (either loading the cached list or the updated one).
- Try to make sure we don't display the members loaded from timeline items as the cached room list by mistake.
* Update screenshots
* Simplify member loading logic.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-14 08:05:44 +00:00
Jorge Martin Espinosa
59a682b407
Change a room's permissions power levels (#2525)
* Change a room's permissions power levels

* Make `currentPermissions` use a `MatrixRoomPowerLevels?` instance instead.

* Update strings

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-03-12 15:45:06 +01:00
Benjamin Bouvier
33a039d2d5 Disable trace logs for read receipts
Read receipts have been considered quite stable over the last few weeks, so
there's no need to keep the trace level for the associated logs for the time
being.
2024-03-08 15:11:46 +01:00
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