ios: fix member view freezing on iOS 15, closes #3487 (#3547)

This commit is contained in:
Evgeny Poberezkin 2023-12-13 11:27:28 +00:00 committed by GitHub
parent ae94bb6f87
commit 7f9f9a674c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 11 deletions

View File

@ -16,7 +16,6 @@ struct GroupChatInfoView: View {
@Environment(\.dismiss) var dismiss: DismissAction
@ObservedObject var chat: Chat
@Binding var groupInfo: GroupInfo
@ObservedObject private var alertManager = AlertManager.shared
@State private var alert: GroupChatInfoViewAlert? = nil
@State private var groupLink: String?
@State private var groupLinkMemberRole: GroupMemberRole = .member

View File

@ -188,6 +188,8 @@ struct GroupMemberInfoView: View {
// this condition prevents re-setting picker
if !justOpened { return }
}
justOpened = false
DispatchQueue.main.async {
newRole = member.memberRole
do {
let (_, stats) = try apiGroupMemberInfo(groupInfo.apiId, member.groupMemberId)
@ -198,7 +200,7 @@ struct GroupMemberInfoView: View {
} catch let error {
logger.error("apiGroupMemberInfo or apiGetGroupMemberCode error: \(responseError(error))")
}
justOpened = false
}
}
.onChange(of: newRole) { newRole in
if newRole != member.memberRole {

View File

@ -74,6 +74,7 @@ struct QRCode: View {
.onAppear {
image = image ?? generateImage(uri, tintColor: tintColor)
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}