* Handle poll events from the sdk
* Render started poll event in the timeline
* Create poll module
* Check poll kind before revealing the results
* Check if user has voted before revealing the results
* Add active poll previews
* Minor cleanup
* Update todos
* Fix CI
* Remove hardcoded string
* Update preview
* changelog file
* Update screenshots
* Use CommonPlurals
* Set poll root view as selectableGroup
* Improve poll result rendering
* Update screenshots
* Add missing showkase processor
* Update screenshots
* Add feature flag for polls
* Add supporting text in PreferenceCheckbox
* Render poll events if feature flag is enabled
* changelog
* Update screenshots
* Fix tests
* Move feature flag check to poll factory
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Handle poll events from the sdk
* Render started poll event in the timeline
* Create poll module
* Check poll kind before revealing the results
* Check if user has voted before revealing the results
* Add active poll previews
* Minor cleanup
* Update todos
* Fix CI
* Remove hardcoded string
* Update preview
* changelog file
* Update screenshots
* Use CommonPlurals
* Set poll root view as selectableGroup
* Improve poll result rendering
* Update screenshots
* Add missing showkase processor
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Make `InternalButton` internal instead of private so it can be customised.
Also, change the `ButtonColors.contentColor` for text buttons to `LocalContentColor.current` by default.
* Add temporary color for Snackbar action label
* Implement `Snackbar` component based on Compound
* Propagate changes to all other components
* Use right Preview annotation config
* Move `ButtonVisuals` to their own file
* Update screenshots
* Make previews internal
* Update screenshots
* Set a custom token for contentColor in AppBars
* Change 'Label' to 'Action' in the previews
* Add changelog
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Change RoomSummaryDataSource to RoomListService to better reflects the rust api
* Better Sync management
* Sync: improve sync spinner rendering
* Sync: make test compiles
* Sync: add more test for sync spinner
* Sync: more clean-up
* Sync: pr review
---------
Co-authored-by: ganfra <francoisg@element.io>
* Enable filter push notifications by push rules
* Remove unused `filterByPushRules` parameter
* Use fallback notification only for items not filetered by the push rules
* Fix tests
* Align TracingConfiguration with iOS
* Create TracingTree from rust sdk
* tracing: create a working configuration with RustTracingTree
* Tracing: WIP implementation of new api
* Tracing: clean up
* Tracing: use the latest api
* Tracing: some more clean up
* Remove generated logcat file after compressing it
---------
Co-authored-by: ganfra <francoisg@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
* Create `CompoundButton`
* Some fixes
* Lint fixes
* Start replacing existing `Button` usages
* Replace button usages
* Remove previous Button composable
* Rename `CompoundButton` to `Button`
* Fix emphasized button being displayed as Text
* Fix cancel button in `WaitListView`
* Update screenshots
* Add shorthand functions for `OutlinedButton` and `TextButton`
* Add changelog
* Fix wrong size used for emphasized button in dialog
* Create a private `ButtonInternal` implementation with the shared logic.
- Make `ButtonStyle` private.
- Rename `title` to `text`.
- Rename `buttonStyle` and `buttonSize` to just `style` and `size`.
* Fix several warnings and lint issues.
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Extract a RustMatrixClientFactory
* Use serverVersions api on client builder to speed up startup.
* Clean up
* Fix compilation of sample
---------
Co-authored-by: ganfra <francoisg@element.io>
* Fix sending read receipts when entering a room
* Improve solution for sending a read receipt when opening a room
* Roll back previous solution as it broke unit tests
* Remove dead code
* Update dependency org.matrix.rustcomponents:sdk-android to v0.1.38
* Fix API breaks
* Use `roomListItem.avatarUrl` if possible
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
* Sort reactions by count and then timestamp
- Sort reactions within an aggregation by timestamp descending. This puts the most recent at the top, useful in cases like the reaction summary view or getting the most recent reaction.
- Sort aggregated reactions by count and then timestamp ascending, using the most recent reaction in the aggregation. This appends new aggregations on the end of the reaction layout.
* Add reaction summary view
* fix warnings
* Fix test unit tests and add sorting tests
- Fix broken build in test code
- Add a test for reaction sorting
* Remove default closure, move logic to presenter and add tests
* Update screenshots
* Fix imports
* Revert Screenshots I didn't update
* Fix imports remove screetshots
* Update screenshots
* Update screenshots
* Address comments.
* Update screenshots
* Remove unnecessary snapshotFlow
* Fix code quality checks
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>