* UX cleanup: user profile.
- Move send DM to a CTA button.
- Add 'Call' CTA button too when there is a DM with that user and a call is possible.
- Add missing tests.
* Update screenshots
* Add tests for clicking on the avatar
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Always display 'lost recovery key?' option
* Use `isLastDevice` it to display only 'enter recovery key' option for verification.
* Update strings. This should fix the wrong term 'passcode' being used in the recovery key screen title.
* Disable 'lost your recovery key?' button while the screen is in a loading state
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Improve enter recovery key screen UI
* Add instructions to reset the encryption of the logged in account.
* Update screenshots
* Fix maestro flow
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Categorise members by role in the ChangeRoles screen
* Fix automatic reload of member list when either the membership or power levels change
* Replace empty space with disabled checkbox
* Add 'pending' label to members who are in invited state
* Implement new designs
* Fix string issue in confirm recovery key screen
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Move session verification to the FTUE
* Allow session verification flow to be restarted
* Use `EncryptionService` to display session verification faster
* Remove session verification item from settings
* Remove session verification banner from room list
* Remove 'verification needed' variant from the `TimelineEncryptedHistoryBanner`
* Improve verification flow UI and UX
* Remove 'verification successful' snackbar message
* Only register push provider after the session has been verified
* Hide room list while the session hasn't been verified
* Prevent deep links from changing the navigation if the session isn't verified
* Update screenshots
* Renamed `FtueState` to `FtueService`, created an actual `FtueState`.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Change a room's permissions power levels
* Make `currentPermissions` use a `MatrixRoomPowerLevels?` instance instead.
* Update strings
* Update screenshots
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Allow Admins to modify room member roles:
- Add a 'roles and permissions' option for each room.
- Allow promoting users to admins, adding or removing moderators, and demote yourself if you're and admin.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
* Show blocked users list.
Also allow to unblock them from this list.
* Add non-blocking `AsyncIndicatorHost` component
* Use `StateFlow` for getting ignored users.
---------
Co-authored-by: ElementBot <benoitm+elementbot@element.io>