Commit graph

588 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
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
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
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