* Move `observeRoomMemberIdentityStateChange` and associated classes to `libs:matrixui` module so they can be reused
* Add `EncryptionService.getUserIdentity` method to retrieve not only if the user is verified or not, but in which state they are
* Fix `IdentityChangePresenter` after the previous changes
* Fix `withFakeLifecycleOwner` and add `testWithLifecycleOwner` helper
* Display verified badge in DM top app bar when possible
* Display a verification violation warning icon next to the 'People' item in room details screen
* Display either a verified badge or a verification violation warning icon next to the room members in the room member list screen
* Display either a verified badge or a verification violation warning and withdraw verification button in the room member profile.
Generic user profiles won't display verification state anymore since we can't easily track changes in it.
* Add preview for room member details screen with verification violation identity state
* Add verified and violation badge to the `Profile` list item in room details screen
* Update screenshots
---------
Co-authored-by: ElementBot <android@element.io>
Some internal refactoring was done too:
- Remove RoomInfo.isPublic to only use JoinRule.
- Also take into account restricted access rooms for previews.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
* Use in-memory thumbnail APIs when possible
* Make an exception for animated image types.
Also add `TimelineItemImageContent.thumbnailMediaRequestData` lazy property.
* Try simplifying the logic a bit more.
Hide images, videos and stickers in the timeline.
Disable click on hidden content. It must be revealed first.
Add preview without BlurHash.
Also hide image in thumbnails.
This patch fixes getDirectRoomMember not respecting direct rooms
with more than two members total but only two active. This commonly
occurs when users migrate to a new account by adding a new account
to rooms and leaving with the old one.
Other parts of the codebase (such as the people room list filter)
already respect the active member count of a room instead of the
total (historic) number of unique members.
This fixes the room details screen not showing up correctly, for
example missing the avatar cluster.
Signed-off-by: networkException <git@nwex.de>