* 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>
* Add 'reply to' UI to the message composer.
* Move the `BlurHashAsyncImage` to `:libraries:designsystem` as it is now used in several modules.
* Create reusable `AttachmentThumbnail` and associated data classes and enums, it's now added to `:libraries:matrixui`.
* Re-use `AttachmentThumbnail` in a `ActionListView` and `TextComposer`.
* Add 'inReplyTo' models and UI.
* Add min size for images
* Create a separate layout for media items with no reply to info. Also, separate `Timeline__Row` components from `TimelineView`, as it was getting too large.
* Added `EqualWidthColumn` to use inside message bubbles. Also fixed some modifiers for media items replying to other messages.
* Disable `inReplyToClicked`.
* Remove unused resources and libraries.
* Remove any traces of `BlurHashAsyncImage` in `:features:messages`, since it was moved to the design system.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>