Commit graph

248 commits

Author SHA1 Message Date
Jorge Martin Espinosa
dbec1a0a60
Improve fetch members performance, relax regexes for validating ids (#964)
* Fetched `RoomMembers` are mapped in parallel

* Add horizontal padding to room/user name in room details screen

* Relax User & Event id regex matches

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-07-26 16:31:26 +02:00
Jorge Martin Espinosa
05f7037939
Prepare update to Rust SDK 0.1.36 (#966)
* Update to Rust SDK 0.1.36

* Cancel fetching members when the we exit the room
2023-07-26 14:22:09 +00:00
ganfra
506b473d4d Small change after PR review 2023-07-25 18:41:43 +02:00
ganfra
da57f42fcc Merge branch 'develop' into feature/fga/avoid_deadlocks 2023-07-25 16:09:24 +02:00
ganfra
e35bb73a86 Rework some MatrixRoom api and fix rust 'destroyed' crash 2023-07-25 12:06:36 +02:00
Benoit Marty
832fd69153 Use an AtomicBoolean instead of a MutableStateFlow to atomically init the RustMatrixRoom. Should improve #951. 2023-07-24 18:04:21 +02:00
ganfra
5089dd0dda Session.getRoom : suspend the whole method 2023-07-21 14:12:54 +02:00
ganfra
0a59e974ae Deadlock: makes sure timelineListener TaskHandle.cancel is called (and memory is released correctly) 2023-07-21 14:12:28 +02:00
ganfra
1583899261 Introduce Disposable extension to destroy all disposable in an Iterable 2023-07-21 10:20:37 +02:00
Benoit Marty
c75eabbcb0 Enable detekt rules UnnecessaryParentheses and cleanup the code. 2023-07-20 18:08:08 +02:00
Benoit Marty
2928073e22 Enable detekt rules UnusedImports and cleanup the code. 2023-07-20 18:00:23 +02:00
Benoit Marty
8b97d50050
Merge pull request #920 from vector-im/feature/bma/slidingSyncState
Sliding sync state rendering
2023-07-19 16:26:14 +02:00
Benoit Marty
3c9ecec563 Make SyncState values match SyncServiceState values. 2023-07-19 14:44:53 +02:00
ganfra
5f225ce3b7 TimelineDiff: use firstOrNull even if it shouldn't never be empty 2023-07-19 14:39:23 +02:00
Jorge Martín
243a39d6de Don't blindly retry fetching pending or failed event details 2023-07-19 13:14:45 +02:00
ganfra
9bf388eb1a Avoid spamming sync flow by checking item origin 2023-07-19 11:48:05 +02:00
Benoit Marty
02251f2d96
Merge pull request #901 from vector-im/feature/fga/power_level
Feature/fga/power level
2023-07-18 23:39:52 +02:00
ganfra
f8d5d25d90
Merge pull request #907 from vector-im/feature/fga/fix_room_list_scroll_position
RoomList: introduce RoomListDataSource
2023-07-18 23:31:34 +02:00
Benoit Marty
39a8d9dae0
Merge pull request #903 from vector-im/feature/bma/sessionDeleted
React to session deletion (from another session)
2023-07-18 23:30:30 +02:00
ganfra
60d0b5c134 Merge branch 'develop' into feature/fga/fix_room_list_scroll_position 2023-07-18 23:07:10 +02:00
Benoit Marty
c5629b3a32 Format files. 2023-07-18 23:05:50 +02:00
ganfra
1d2fd52ce6 Merge branch 'develop' into feature/fga/power_level 2023-07-18 22:54:33 +02:00
ganfra
9741b3df64
Merge pull request #906 from vector-im/feature/fga/update-rust-sdk-0.1.34
Feature/fga/update rust sdk 0.1.34
2023-07-18 22:52:48 +02:00
ganfra
bb12338583 RoomList: introduce RoomListDataSource so we keep the data in memory as long as the node is in the backstack. 2023-07-18 22:09:50 +02:00
ganfra
614f97543e Update rust sdk to 0.1.34 2023-07-18 20:12:51 +02:00
Benoit Marty
e8b1f2681a React to session deletion (from another session) 2023-07-18 18:00:12 +02:00
ganfra
84500d41eb Merge branch 'develop' into feature/fga/better_media_handling 2023-07-18 15:13:59 +02:00
ganfra
669e62e462 PowerLevel: use new api exposed from rust which doesn't need to load members. 2023-07-18 15:10:44 +02:00
ganfra
7cefff8610 Merge branch 'develop' into feature/fga/update-rust-sdk-0.1.32 2023-07-18 10:12:19 +02:00
Jorge Martín
e730ea6df3 Merge remote-tracking branch 'origin/develop' into feature/fga/better_timeline_scroll 2023-07-18 07:46:02 +02:00
ganfra
8f01e8133f Merge branch 'develop' into feature/fga/better_timeline_scroll 2023-07-17 23:35:41 +02:00
ganfra
207a20b67c RoomFlowNode: use newRoot instead of safeRoot as in this case it can create a race condition where we end up not switching node 2023-07-17 23:27:18 +02:00
ganfra
9b96bd427c Update rust sdk : start branching new SyncService (wip) 2023-07-17 22:26:21 +02:00
Benoit Marty
80cf8e758a
Merge branch 'develop' into fix/jme/880-sliding-sync-loop-expires-and-restarts 2023-07-17 22:18:59 +02:00
Benoit Marty
48277d095a Change return type (mostly for clarity) 2023-07-17 22:03:21 +02:00
Jorge Martin Espinosa
2488432805
Hide encryption history + FTUE flow (#839)
* First attempt at implementing encrypted history banner and removing old UTDs

* Get the right behavior in the timeline

* Implement the designs

* Extract post-processing logic, add tests

* Add encryption banner to timeline screenshots

* Create FTUE feature to handle welcome screen and analytics

* Move classes to their own packages, add tests for `DefaultFtueState`.

* Remove unnecessary private MutableStateFlow

* Move some FTUE related methods and classes back to the `impl` module

* Handle back press at each FTUE step

* Remove unneeded `TestScope` receiver for `createState` in tests.

* Use light & dark previews for the banner view.

* Move color customization from `TextStyle` to `Text` component.

* Rename `InfoList` design components, use them in `AnalyticsOptInView` too.

* Cleanup MatrixClient.

* Fix copy&paste error

Co-authored-by: Benoit Marty <benoit@matrix.org>

* Fix typo

* Fix Maestro tests

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2023-07-17 18:34:36 +02:00
Benoit Marty
abe7e952a3 Map ClientException. 2023-07-17 15:50:08 +02:00
Jorge Martín
e2549a8308 Try to centralise session restoration through MatrixClientsHolder 2023-07-17 15:05:13 +02:00
Benoit Marty
6fd5ac6655
Merge pull request #859 from vector-im/feature/bma/transactionId
Create value class for transactionId
2023-07-17 11:28:42 +02:00
ganfra
3d0e6a4130 Media: render audio content 2023-07-13 18:09:58 +02:00
ganfra
dc4e36147d Timeline: introduce origin on timeline items 2023-07-13 13:05:56 +02:00
ganfra
732a4eb5fa
Merge pull request #863 from vector-im/feature/fga/timeline_pagination
Feature/fga/timeline pagination
2023-07-13 11:58:10 +02:00
ganfra
e334100b75 Timeline: split the initial item list in small chunks to post items asap 2023-07-12 22:44:42 +02:00
ganfra
9873588d2a Timeline: avoid pagination when timeline is not ready 2023-07-12 22:43:35 +02:00
Benoit Marty
6e2f645514 Create value class for transactionId. There is no validation on the format, but validation is a bonus for userId, roomId, etc.
The main advantage of using value classes instead of Strings everywhere is to detect errors at compilation time.
2023-07-12 18:15:17 +02:00
ganfra
c8776f9806 Merge branch 'develop' into feature/fga/update-rust-sdk-0.1.31 2023-07-12 17:36:05 +02:00
ganfra
6622889b09 Update rust sdk to 0.1.31: new app service 2023-07-12 16:05:51 +02:00
ganfra
1472a29441 Update rust sdk to 0.1.31: new notification api 2023-07-12 16:05:36 +02:00
ganfra
beb10cbfc4 Update rust sdk to 0.1.31: new uniqueId on timeline 2023-07-12 16:04:10 +02:00
Benoit Marty
1627dbfd27 Improve logs. 2023-07-12 12:39:41 +02:00