aboutsummaryrefslogtreecommitdiffstats
path: root/WireGuard/WireGuard/UI/iOS/QRScanViewController.swift
diff options
context:
space:
mode:
Diffstat (limited to 'WireGuard/WireGuard/UI/iOS/QRScanViewController.swift')
-rw-r--r--WireGuard/WireGuard/UI/iOS/QRScanViewController.swift16
1 files changed, 14 insertions, 2 deletions
diff --git a/WireGuard/WireGuard/UI/iOS/QRScanViewController.swift b/WireGuard/WireGuard/UI/iOS/QRScanViewController.swift
index 5ae8d089..a9594451 100644
--- a/WireGuard/WireGuard/UI/iOS/QRScanViewController.swift
+++ b/WireGuard/WireGuard/UI/iOS/QRScanViewController.swift
@@ -101,8 +101,20 @@ class QRScanViewController: UIViewController {
scanDidEncounterError(title: "Invalid Code", message: "The scanned code is not a valid WireGuard config file.")
return
}
- delegate?.scannedQRCode(tunnelConfiguration: tunnelConfiguration, qrScanViewController: self)
- dismiss(animated: true, completion: nil)
+
+ let alert = UIAlertController(title: NSLocalizedString("Enter a title for new tunnel", comment: ""), message: nil, preferredStyle: .alert)
+ alert.addTextField(configurationHandler: nil)
+ alert.addAction(UIAlertAction(title: NSLocalizedString("Cancel", comment: ""), style: .cancel, handler: nil))
+ alert.addAction(UIAlertAction(title: NSLocalizedString("Save", comment: ""), style: .default, handler: { [weak self] _ in
+ let title = alert.textFields?[0].text ?? ""
+ if (title.isEmpty) { return }
+ tunnelConfiguration.interface.name = title
+ if let s = self {
+ s.delegate?.scannedQRCode(tunnelConfiguration: tunnelConfiguration, qrScanViewController: s)
+ s.dismiss(animated: true, completion: nil)
+ }
+ }))
+ present(alert, animated: true)
}
func scanDidEncounterError(title: String, message: String) {