* Fix displaying reaction row in message action list
* Rename `sendState` to `localSendState` and make it nullable.
Create an `isRemote` helper to detect if an event comes from the server instead.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Fix actions for redacted, not sent and media messages
* Make `EventDebugInfoView` sections fill max width
* Don't display action list if there are no actions to display
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Send read receipts
* Add changelog
* Add tests.
* Optimise how sending read receipts work in the timeline.
* Move the check for send read receipts to the presenter
Also improve the way we find the first visible `Event` if we have `Virtual` ones in the timeline.
- `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)`)
If you are looking at a DM where the other party has left then
when you focus the composer for the first time we'll show a
dialog asking if you want to reinvite the other party.
Closes#590
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.24
* Add new `filterByPushRules`.
Only existing usage of this API will set this param to `true` in order to not change the current behavior.
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marco Romano <marcor@element.io>
* Add `RetrySendMessageMenu` to retry sending failed messages or removing its local echo.
* Fix initial event being retrieved, not the updated one
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Use member count instead of counting members
For the room details screen, use the member count as supplied by
matrix instead of waiting for the entire member list to be
retrieved and then manually adding up all the relevant users.
This removes the loading state of the member count, relying on
a spinner on the member list itself if the user actually wants
to see the members. (The performance of that will be improved
separately on the rust side in the future)
Closes#505
- Add the edit action in the room details
- Add "Add topic" button in room details
- Add the screen behind that action to edit some room properties: avatar, name, topic
- Handle the save button action
- enable the button only if changes are detected
- display a loader "updating room"
- display an error dialog if any request has failed
- Check user has the right power level to change various attributes
- "Add topic" is only shown if there's no topic and they are able to set on
- Edit menu is only shown if they can change topic, name or avatar
- On the edit page, any fields they can't change are uneditable
Co-authored-by: Chris Smith <csmith@lunarian.uk>