MatrixRoom API refinement (#719)

- `syncUpdateFlow` becomes a `val` and always returns the same instance of the underlying `StateFlow` instead of different `Flow` instances to allow consumers not to remember the `Flow` and not to specify an unneeded initial value.
- `timeline` becomes a `val` as it already always returns the same instance.
- Amends calling code accordingly
- Removes a few unneeded `val`s in `RustMatrixClient
- Fixes a small bug in `MessagesPresenter` that allowed to sometime show a newly created room's name as "Empty room" (changes `LaunchedEffect(syncUpdateFlow)` to `LaunchedEffect(syncUpdateFlow.value)`)
This commit is contained in:
Marco Romano 2023-06-29 10:48:55 +02:00 committed by GitHub
parent 91060c76a7
commit 354374ed49
8 changed files with 23 additions and 34 deletions

View file

@ -58,9 +58,9 @@ interface MatrixRoom : Closeable {
*/
suspend fun updateMembers(): Result<Unit>
fun syncUpdateFlow(): Flow<Long>
val syncUpdateFlow: StateFlow<Long>
fun timeline(): MatrixTimeline
val timeline: MatrixTimeline
fun open(): Result<Unit>