ui: fix unknown member UI (#3672)
This commit is contained in:
parent
bfe5d51df7
commit
5b7a09f488
@ -1801,7 +1801,8 @@ public struct GroupMember: Identifiable, Decodable {
|
|||||||
public var displayName: String {
|
public var displayName: String {
|
||||||
get {
|
get {
|
||||||
let p = memberProfile
|
let p = memberProfile
|
||||||
return p.localAlias == "" ? p.displayName : p.localAlias
|
let name = p.localAlias == "" ? p.displayName : p.localAlias
|
||||||
|
return pastMember(name)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public var fullName: String { get { memberProfile.fullName } }
|
public var fullName: String { get { memberProfile.fullName } }
|
||||||
@ -1827,14 +1828,16 @@ public struct GroupMember: Identifiable, Decodable {
|
|||||||
? p.displayName + (p.fullName == "" || p.fullName == p.displayName ? "" : " / \(p.fullName)")
|
? p.displayName + (p.fullName == "" || p.fullName == p.displayName ? "" : " / \(p.fullName)")
|
||||||
: p.localAlias
|
: p.localAlias
|
||||||
)
|
)
|
||||||
return (
|
return pastMember(name)
|
||||||
memberStatus == .memUnknown
|
|
||||||
? String.localizedStringWithFormat(NSLocalizedString("_Previous member_ %@", comment: "previous/unknown group member"), name)
|
|
||||||
: name
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private func pastMember(_ name: String) -> String {
|
||||||
|
memberStatus == .memUnknown
|
||||||
|
? String.localizedStringWithFormat(NSLocalizedString("Past member %@", comment: "past/unknown group member"), name)
|
||||||
|
: name
|
||||||
|
}
|
||||||
|
|
||||||
public var memberActive: Bool {
|
public var memberActive: Bool {
|
||||||
switch memberStatus {
|
switch memberStatus {
|
||||||
case .memRemoved: return false
|
case .memRemoved: return false
|
||||||
|
@ -1261,7 +1261,11 @@ data class GroupMember (
|
|||||||
var activeConn: Connection? = null
|
var activeConn: Connection? = null
|
||||||
) {
|
) {
|
||||||
val id: String get() = "#$groupId @$groupMemberId"
|
val id: String get() = "#$groupId @$groupMemberId"
|
||||||
val displayName: String get() = memberProfile.localAlias.ifEmpty { memberProfile.displayName }
|
val displayName: String
|
||||||
|
get() {
|
||||||
|
val name = memberProfile.localAlias.ifEmpty { memberProfile.displayName }
|
||||||
|
return pastMember(name)
|
||||||
|
}
|
||||||
val fullName: String get() = memberProfile.fullName
|
val fullName: String get() = memberProfile.fullName
|
||||||
val image: String? get() = memberProfile.image
|
val image: String? get() = memberProfile.image
|
||||||
val contactLink: String? = memberProfile.contactLink
|
val contactLink: String? = memberProfile.contactLink
|
||||||
@ -1270,12 +1274,16 @@ data class GroupMember (
|
|||||||
val chatViewName: String
|
val chatViewName: String
|
||||||
get() {
|
get() {
|
||||||
val name = memberProfile.localAlias.ifEmpty { displayName + (if (fullName == "" || fullName == displayName) "" else " / $fullName") }
|
val name = memberProfile.localAlias.ifEmpty { displayName + (if (fullName == "" || fullName == displayName) "" else " / $fullName") }
|
||||||
return if (memberStatus == GroupMemberStatus.MemUnknown)
|
return pastMember(name)
|
||||||
String.format(generalGetString(MR.strings.previous_member_vName), name)
|
|
||||||
else
|
|
||||||
name
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun pastMember(name: String): String {
|
||||||
|
return if (memberStatus == GroupMemberStatus.MemUnknown)
|
||||||
|
String.format(generalGetString(MR.strings.past_member_vName), name)
|
||||||
|
else
|
||||||
|
name
|
||||||
|
}
|
||||||
|
|
||||||
val memberActive: Boolean get() = when (this.memberStatus) {
|
val memberActive: Boolean get() = when (this.memberStatus) {
|
||||||
GroupMemberStatus.MemRemoved -> false
|
GroupMemberStatus.MemRemoved -> false
|
||||||
GroupMemberStatus.MemLeft -> false
|
GroupMemberStatus.MemLeft -> false
|
||||||
|
@ -370,7 +370,7 @@ fun GroupMemberInfoLayout(
|
|||||||
@Composable
|
@Composable
|
||||||
fun GroupMemberInfoHeader(member: GroupMember) {
|
fun GroupMemberInfoHeader(member: GroupMember) {
|
||||||
Column(
|
Column(
|
||||||
Modifier.padding(horizontal = 8.dp),
|
Modifier.padding(horizontal = 16.dp),
|
||||||
horizontalAlignment = Alignment.CenterHorizontally
|
horizontalAlignment = Alignment.CenterHorizontally
|
||||||
) {
|
) {
|
||||||
ProfileImage(size = 192.dp, member.image, color = if (isInDarkTheme()) GroupDark else SettingsSecondaryLight)
|
ProfileImage(size = 192.dp, member.image, color = if (isInDarkTheme()) GroupDark else SettingsSecondaryLight)
|
||||||
|
@ -1230,7 +1230,7 @@
|
|||||||
<string name="group_member_status_connecting">connecting</string>
|
<string name="group_member_status_connecting">connecting</string>
|
||||||
<string name="group_member_status_unknown_short">unknown</string>
|
<string name="group_member_status_unknown_short">unknown</string>
|
||||||
|
|
||||||
<string name="previous_member_vName"><![CDATA[<i>Previous member</i> %1$s]]></string>
|
<string name="past_member_vName">Past member %1$s</string>
|
||||||
|
|
||||||
<!-- AddGroupMembersView.kt -->
|
<!-- AddGroupMembersView.kt -->
|
||||||
<string name="no_contacts_to_add">No contacts to add</string>
|
<string name="no_contacts_to_add">No contacts to add</string>
|
||||||
|
Loading…
Reference in New Issue
Block a user