macOS: Tunnel edit: Handle deletion outside app
Signed-off-by: Roopesh Chander <roop@roopc.net>
This commit is contained in:
parent
2677efc9bf
commit
9f362e8cb0
|
@ -84,6 +84,7 @@ class TunnelDetailTableViewController: NSViewController {
|
||||||
}
|
}
|
||||||
private var tableViewModelRows = [TableViewModelRow]()
|
private var tableViewModelRows = [TableViewModelRow]()
|
||||||
private var statusObservationToken: AnyObject?
|
private var statusObservationToken: AnyObject?
|
||||||
|
private var tunnelEditVC: TunnelEditViewController?
|
||||||
|
|
||||||
init(tunnelsManager: TunnelsManager, tunnel: TunnelContainer) {
|
init(tunnelsManager: TunnelsManager, tunnel: TunnelContainer) {
|
||||||
self.tunnelsManager = tunnelsManager
|
self.tunnelsManager = tunnelsManager
|
||||||
|
@ -201,6 +202,7 @@ class TunnelDetailTableViewController: NSViewController {
|
||||||
let tunnelEditVC = TunnelEditViewController(tunnelsManager: tunnelsManager, tunnel: tunnel)
|
let tunnelEditVC = TunnelEditViewController(tunnelsManager: tunnelsManager, tunnel: tunnel)
|
||||||
tunnelEditVC.delegate = self
|
tunnelEditVC.delegate = self
|
||||||
presentAsSheet(tunnelEditVC)
|
presentAsSheet(tunnelEditVC)
|
||||||
|
self.tunnelEditVC = tunnelEditVC
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func handleToggleActiveStatusAction() {
|
@objc func handleToggleActiveStatusAction() {
|
||||||
|
@ -219,6 +221,13 @@ class TunnelDetailTableViewController: NSViewController {
|
||||||
tunnelsManager.startDeactivation(of: tunnel)
|
tunnelsManager.startDeactivation(of: tunnel)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override func viewWillDisappear() {
|
||||||
|
super.viewWillDisappear()
|
||||||
|
if let tunnelEditVC = tunnelEditVC {
|
||||||
|
dismiss(tunnelEditVC)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extension TunnelDetailTableViewController: NSTableViewDataSource {
|
extension TunnelDetailTableViewController: NSTableViewDataSource {
|
||||||
|
@ -264,6 +273,6 @@ extension TunnelDetailTableViewController: TunnelEditViewControllerDelegate {
|
||||||
}
|
}
|
||||||
|
|
||||||
func tunnelEditingCancelled() {
|
func tunnelEditingCancelled() {
|
||||||
// Nothing to do
|
self.tunnelEditVC = nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue