mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 16:10:20 +00:00
Allow focusing the different avatars making up a DM details cluster separately. (#3341)
This commit is contained in:
@@ -25,6 +25,8 @@ struct RoomAvatarImage: View {
|
||||
let avatarSize: AvatarSize
|
||||
let mediaProvider: MediaProviderProtocol?
|
||||
|
||||
private(set) var onAvatarTap: ((URL) -> Void)?
|
||||
|
||||
var body: some View {
|
||||
switch avatar {
|
||||
case .room(let id, let name, let avatarURL):
|
||||
@@ -32,7 +34,8 @@ struct RoomAvatarImage: View {
|
||||
name: name,
|
||||
contentID: id,
|
||||
avatarSize: avatarSize,
|
||||
mediaProvider: mediaProvider)
|
||||
mediaProvider: mediaProvider,
|
||||
onTap: onAvatarTap)
|
||||
case .heroes(let users):
|
||||
// We will expand upon this with more stack sizes in the future.
|
||||
if users.count == 0 {
|
||||
@@ -45,14 +48,16 @@ struct RoomAvatarImage: View {
|
||||
name: users[0].displayName,
|
||||
contentID: users[0].userID,
|
||||
avatarSize: avatarSize,
|
||||
mediaProvider: mediaProvider)
|
||||
mediaProvider: mediaProvider,
|
||||
onTap: onAvatarTap)
|
||||
.scaledFrame(size: clusterSize, alignment: .topTrailing)
|
||||
|
||||
LoadableAvatarImage(url: users[1].avatarURL,
|
||||
name: users[1].displayName,
|
||||
contentID: users[1].userID,
|
||||
avatarSize: avatarSize,
|
||||
mediaProvider: mediaProvider)
|
||||
mediaProvider: mediaProvider,
|
||||
onTap: onAvatarTap)
|
||||
.mask {
|
||||
Rectangle()
|
||||
.fill(Color.white)
|
||||
@@ -74,7 +79,8 @@ struct RoomAvatarImage: View {
|
||||
name: users[0].displayName,
|
||||
contentID: users[0].userID,
|
||||
avatarSize: avatarSize,
|
||||
mediaProvider: mediaProvider)
|
||||
mediaProvider: mediaProvider,
|
||||
onTap: onAvatarTap)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user