ios: UI to cancel receiving file (#2123)

* ios: UI to cancel receiving file

* different alert
This commit is contained in:
Evgeny Poberezkin
2023-04-14 14:57:17 +02:00
committed by GitHub
parent 29735a807b
commit febfc396e3

View File

@@ -493,7 +493,7 @@ struct ChatView: View {
if ci.meta.itemDeleted == nil,
let file = ci.file,
file.cancellable {
menu.append(cancelFileUIAction(file.fileId))
menu.append(cancelFileUIAction(file.fileId, sent: ci.chatDir.sent))
}
if !live || !ci.meta.isLive {
menu.append(deleteUIAction())
@@ -585,16 +585,15 @@ struct ChatView: View {
}
}
private func cancelFileUIAction(_ fileId: Int64) -> UIAction {
private func cancelFileUIAction(_ fileId: Int64, sent: Bool) -> UIAction {
UIAction(
title: NSLocalizedString("Cancel", comment: "chat item action"),
image: UIImage(systemName: "xmark"),
attributes: [.destructive]
title: NSLocalizedString("Stop file", comment: "chat item action"),
image: UIImage(systemName: "xmark")
) { _ in
AlertManager.shared.showAlert(Alert(
title: Text("Cancel file transfer?"),
message: Text("File transfer will be cancelled. If it's in progress it will be stoppped."),
primaryButton: .destructive(Text("Confirm")) {
title: Text(sent ? "Stop sending file?" : "Stop receiving file?"),
message: Text(sent ? "Sending file will be stopped." : "Receiving file will be stopped."),
primaryButton: .destructive(Text("Stop")) {
Task {
if let user = ChatModel.shared.currentUser {
await cancelFile(user: user, fileId: fileId)