mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2025-06-28 20:29:53 +00:00
ios: fix taps on reactions, member profile images, selecting items, icons to navigate to found and forwarded items (Xcode 16 regressions) (#5890)
This commit is contained in:
parent
2a43a02af3
commit
bb2e7baaa8
1 changed files with 12 additions and 15 deletions
|
@ -1276,10 +1276,10 @@ struct ChatView: View {
|
||||||
if let selected = selectedChatItems, chatItem.canBeDeletedForSelf {
|
if let selected = selectedChatItems, chatItem.canBeDeletedForSelf {
|
||||||
Color.clear
|
Color.clear
|
||||||
.contentShape(Rectangle())
|
.contentShape(Rectangle())
|
||||||
.onTapGesture {
|
.simultaneousGesture(TapGesture().onEnded {
|
||||||
let checked = selected.contains(chatItem.id)
|
let checked = selected.contains(chatItem.id)
|
||||||
selectUnselectChatItem(select: !checked, chatItem)
|
selectUnselectChatItem(select: !checked, chatItem)
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if let date = itemSeparation.date {
|
if let date = itemSeparation.date {
|
||||||
|
@ -1468,7 +1468,7 @@ struct ChatView: View {
|
||||||
}
|
}
|
||||||
HStack(alignment: .top, spacing: 10) {
|
HStack(alignment: .top, spacing: 10) {
|
||||||
MemberProfileImage(member, size: memberImageSize, backgroundColor: theme.colors.background)
|
MemberProfileImage(member, size: memberImageSize, backgroundColor: theme.colors.background)
|
||||||
.onTapGesture {
|
.simultaneousGesture(TapGesture().onEnded {
|
||||||
if let mem = m.getGroupMember(member.groupMemberId) {
|
if let mem = m.getGroupMember(member.groupMemberId) {
|
||||||
selectedMember = mem
|
selectedMember = mem
|
||||||
} else {
|
} else {
|
||||||
|
@ -1477,7 +1477,7 @@ struct ChatView: View {
|
||||||
m.groupMembersIndexes[member.groupMemberId] = m.groupMembers.count - 1
|
m.groupMembersIndexes[member.groupMemberId] = m.groupMembers.count - 1
|
||||||
selectedMember = mem
|
selectedMember = mem
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
chatItemWithMenu(ci, range, maxWidth, itemSeparation)
|
chatItemWithMenu(ci, range, maxWidth, itemSeparation)
|
||||||
.onPreferenceChange(DetermineWidth.Key.self) { msgWidth = $0 }
|
.onPreferenceChange(DetermineWidth.Key.self) { msgWidth = $0 }
|
||||||
}
|
}
|
||||||
|
@ -1621,9 +1621,9 @@ struct ChatView: View {
|
||||||
.padding(.horizontal, 6)
|
.padding(.horizontal, 6)
|
||||||
.padding(.vertical, 4)
|
.padding(.vertical, 4)
|
||||||
.if(chat.chatInfo.featureEnabled(.reactions) && (ci.allowAddReaction || r.userReacted)) { v in
|
.if(chat.chatInfo.featureEnabled(.reactions) && (ci.allowAddReaction || r.userReacted)) { v in
|
||||||
v.onTapGesture {
|
v.simultaneousGesture(TapGesture().onEnded {
|
||||||
setReaction(ci, add: !r.userReacted, reaction: r.reaction)
|
setReaction(ci, add: !r.userReacted, reaction: r.reaction)
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
switch chat.chatInfo {
|
switch chat.chatInfo {
|
||||||
case let .group(groupInfo):
|
case let .group(groupInfo):
|
||||||
|
@ -2213,15 +2213,12 @@ struct ChatView: View {
|
||||||
}
|
}
|
||||||
|
|
||||||
func goToItemInnerButton(_ alignStart: Bool, _ image: String, touchInProgress: Bool, _ onClick: @escaping () -> Void) -> some View {
|
func goToItemInnerButton(_ alignStart: Bool, _ image: String, touchInProgress: Bool, _ onClick: @escaping () -> Void) -> some View {
|
||||||
Button {
|
|
||||||
onClick()
|
|
||||||
} label: {
|
|
||||||
Image(systemName: image)
|
Image(systemName: image)
|
||||||
.resizable()
|
.resizable()
|
||||||
.frame(width: 13, height: 13)
|
.frame(width: 13, height: 13)
|
||||||
.padding([alignStart ? .trailing : .leading], 10)
|
.padding([alignStart ? .trailing : .leading], 10)
|
||||||
.tint(theme.colors.secondary.opacity(touchInProgress ? 1.0 : 0.4))
|
.tint(theme.colors.secondary.opacity(touchInProgress ? 1.0 : 0.4))
|
||||||
}
|
.simultaneousGesture(TapGesture().onEnded(onClick))
|
||||||
}
|
}
|
||||||
|
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue