update UI

This commit is contained in:
Evgeny Poberezkin
2023-09-11 22:10:13 +01:00
parent 2c56bc606b
commit b93c7759e1
3 changed files with 15 additions and 16 deletions
+6 -11
View File
@@ -450,7 +450,7 @@ struct ChatView: View {
if ci.content.showMemberName {
Group {
if msgScope == .msDirect {
Text("\(member.displayName) **directly**")
Text("\(member.displayName) **only to you**")
} else {
Text(member.displayName)
}
@@ -488,7 +488,7 @@ struct ChatView: View {
if ci.content.showMemberName {
HStack {
if let directMember = directMember {
Text("**directly** to \(directMember.displayName)")
Text("**only to** \(directMember.displayName)")
ProfileImage(imageStr: directMember.image)
.frame(width: 20, height: 20)
.onTapGesture { selectedMember = directMember }
@@ -762,7 +762,7 @@ struct ChatView: View {
private func replyUIAction() -> UIAction {
UIAction(
title: NSLocalizedString("Reply", comment: "chat item action"),
image: UIImage(systemName: "arrowshape.turn.up.left")
image: UIImage(systemName: "arrowshape.turn.up.left.2")
) { _ in
withAnimation {
if composeState.editing {
@@ -780,7 +780,7 @@ struct ChatView: View {
private func replyDirectlyUIAction(_ toDirectMember: GroupMember, _ groupInfo: GroupInfo) -> UIAction {
UIAction(
title: NSLocalizedString("Reply directly", comment: "chat item action"),
image: UIImage(systemName: "arrow.left.arrow.right")
image: UIImage(systemName: "arrowshape.turn.up.left")
) { _ in
let canSend = toDirectMember.canSendDirectlyTo(groupInfo: groupInfo)
switch canSend {
@@ -1046,14 +1046,9 @@ struct ChatView: View {
private func showSndScope(_ directMember: GroupMember?, _ prevItem: ChatItem?) -> Bool {
switch (prevItem?.chatDir) {
case .groupRcv: return true
case .groupRcv: return directMember != nil
case let .groupSnd(prevDirectMember):
switch (prevDirectMember, directMember) {
case (.none, .some(_)): return true
case (.some(_), .none): return true
case let (.some(prevDM), .some(dm)): return prevDM.groupMemberId != dm.groupMemberId
default: return false
}
return prevDirectMember?.groupMemberId != directMember?.groupMemberId
default: return false
}
}
@@ -17,9 +17,11 @@ struct ContextDirectMemberView: View {
var body: some View {
HStack {
if let directMember = directMember {
Text("**only to** \(directMember.chatViewName)")
.lineLimit(1)
if let image = directMember.image {
ProfileImage(imageStr: image)
.frame(width: 30, height: 30)
.frame(width: 24, height: 24)
.padding(.trailing, 2)
} else {
Image(systemName: "arrow.left.arrow.right")
@@ -29,10 +31,9 @@ struct ContextDirectMemberView: View {
.foregroundColor(.secondary)
.padding(.trailing, 2)
}
Text("Directly to \(directMember.chatViewName)")
.lineLimit(1)
} else {
Text("Message will be sent to all members")
// maybe make it disappear after some time?
Text("send to all group members")
}
Spacer()
Button {
+4 -1
View File
@@ -2702,6 +2702,9 @@ public struct CIQuote: Decodable, ItemContent {
return NSLocalizedString("you", comment: "quote sender")
}
case .groupSnd(.msDirect):
// TODO don't quite understand this condition - this is always user's message, why we show the name, and when "you" will be shown?
// Maybe better to repeat "only to <member>" as it was on the original message?
// Or "<user name> only to <member>"?
if let membershipName = membership?.displayName {
return String.localizedStringWithFormat(NSLocalizedString("%@, directly", comment: "quote sender"), membershipName)
} else {
@@ -2710,7 +2713,7 @@ public struct CIQuote: Decodable, ItemContent {
case let .groupRcv(member, .msGroup):
return member.displayName
case let .groupRcv(member, .msDirect):
return String.localizedStringWithFormat(NSLocalizedString("%@, directly", comment: "quote sender"), member.displayName)
return String.localizedStringWithFormat(NSLocalizedString("%@ only to you", comment: "quote sender"), member.displayName)
case nil: return nil
}
}