diff options
Diffstat (limited to '')
-rw-r--r-- | WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift b/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift index f203e09..d994dcb 100644 --- a/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift +++ b/WireGuard/WireGuard/UI/iOS/TunnelEditTableViewController.swift @@ -141,8 +141,16 @@ extension TunnelEditTableViewController { if (field == .generateKeyPair) { let cell = tableView.dequeueReusableCell(withIdentifier: TunnelsEditTableViewButtonCell.id, for: indexPath) as! TunnelsEditTableViewButtonCell cell.buttonText = field.rawValue - cell.onTapped = { - print("Generating keypair is unimplemented") // TODO + cell.onTapped = { [weak self, weak interfaceData] in + if let interfaceData = interfaceData, let s = self { + interfaceData[.privateKey] = Curve25519.generatePrivateKey().base64EncodedString() + if let privateKeyRow = s.interfaceFieldsBySection[section].firstIndex(of: .privateKey), + let publicKeyRow = s.interfaceFieldsBySection[section].firstIndex(of: .publicKey) { + let privateKeyIndex = IndexPath(row: privateKeyRow, section: section) + let publicKeyIndex = IndexPath(row: publicKeyRow, section: section) + s.tableView.reloadRows(at: [privateKeyIndex, publicKeyIndex], with: .automatic) + } + } } return cell } else { |