mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-05 20:09:04 +00:00
Show user statuses in the room members list.
This commit is contained in:
+16
-4
@@ -28,10 +28,16 @@ struct RoomMembersListScreenMemberCell: View {
|
|||||||
|
|
||||||
HStack(alignment: .center, spacing: 4) {
|
HStack(alignment: .center, spacing: 4) {
|
||||||
VStack(alignment: .leading, spacing: 2) {
|
VStack(alignment: .leading, spacing: 2) {
|
||||||
Text(title)
|
HStack(spacing: 8) {
|
||||||
.font(.compound.bodyLG)
|
Text(title)
|
||||||
.foregroundColor(.compound.textPrimary)
|
.lineLimit(1)
|
||||||
.lineLimit(1)
|
|
||||||
|
if let statusEmoji {
|
||||||
|
Text(String(statusEmoji))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.font(.compound.bodyLG)
|
||||||
|
.foregroundColor(.compound.textPrimary)
|
||||||
|
|
||||||
if let subtitle {
|
if let subtitle {
|
||||||
Text(subtitle)
|
Text(subtitle)
|
||||||
@@ -84,6 +90,10 @@ struct RoomMembersListScreenMemberCell: View {
|
|||||||
return listEntry.member.name ?? listEntry.member.id
|
return listEntry.member.name ?? listEntry.member.id
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var statusEmoji: Character? {
|
||||||
|
listEntry.member.isBanned ? nil : listEntry.member.status.displayed?.emoji
|
||||||
|
}
|
||||||
|
|
||||||
var subtitle: String? {
|
var subtitle: String? {
|
||||||
listEntry.member.isBanned ? nil : listEntry.member.id
|
listEntry.member.isBanned ? nil : listEntry.member.id
|
||||||
}
|
}
|
||||||
@@ -101,6 +111,8 @@ struct RoomMembersListMemberCell_Previews: PreviewProvider, TestablePreview {
|
|||||||
static let members: [RoomMemberListScreenEntry] = [
|
static let members: [RoomMemberListScreenEntry] = [
|
||||||
.init(member: .init(withProxy: RoomMemberProxyMock.mockAlice),
|
.init(member: .init(withProxy: RoomMemberProxyMock.mockAlice),
|
||||||
verificationState: .notVerified),
|
verificationState: .notVerified),
|
||||||
|
.init(member: .init(withProxy: RoomMemberProxyMock.mockErin),
|
||||||
|
verificationState: .notVerified),
|
||||||
.init(member: .init(withProxy: RoomMemberProxyMock.mockAdmin),
|
.init(member: .init(withProxy: RoomMemberProxyMock.mockAdmin),
|
||||||
verificationState: .verified),
|
verificationState: .verified),
|
||||||
.init(member: .init(withProxy: RoomMemberProxyMock.mockModerator),
|
.init(member: .init(withProxy: RoomMemberProxyMock.mockModerator),
|
||||||
|
|||||||
Reference in New Issue
Block a user