@@ -232,6 +232,7 @@
|
|||||||
"macMenuAddEmptyTunnel" = "Add empty tunnel...";
|
"macMenuAddEmptyTunnel" = "Add empty tunnel...";
|
||||||
"macMenuExportLog" = "Export log to file...";
|
"macMenuExportLog" = "Export log to file...";
|
||||||
"macMenuExportTunnels" = "Export tunnels to zip...";
|
"macMenuExportTunnels" = "Export tunnels to zip...";
|
||||||
|
"macMenuQuit" = "Quit";
|
||||||
|
|
||||||
// Mac manage tunnels window
|
// Mac manage tunnels window
|
||||||
|
|
||||||
|
|||||||
@@ -41,6 +41,8 @@ class StatusMenu: NSMenu {
|
|||||||
addItem(NSMenuItem.separator())
|
addItem(NSMenuItem.separator())
|
||||||
}
|
}
|
||||||
addTunnelManagementItems()
|
addTunnelManagementItems()
|
||||||
|
addItem(NSMenuItem.separator())
|
||||||
|
addApplicationItems()
|
||||||
}
|
}
|
||||||
|
|
||||||
required init(coder decoder: NSCoder) {
|
required init(coder decoder: NSCoder) {
|
||||||
@@ -118,6 +120,12 @@ class StatusMenu: NSMenu {
|
|||||||
addItem(importItem)
|
addItem(importItem)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func addApplicationItems() {
|
||||||
|
let quitItem = NSMenuItem(title: tr("macMenuQuit"), action: #selector(NSApplication.terminate), keyEquivalent: "")
|
||||||
|
quitItem.target = NSApp
|
||||||
|
addItem(quitItem)
|
||||||
|
}
|
||||||
|
|
||||||
@objc func tunnelClicked(sender: AnyObject) {
|
@objc func tunnelClicked(sender: AnyObject) {
|
||||||
guard let tunnelMenuItem = sender as? NSMenuItem else { return }
|
guard let tunnelMenuItem = sender as? NSMenuItem else { return }
|
||||||
guard let tunnel = tunnelMenuItem.representedObject as? TunnelContainer else { return }
|
guard let tunnel = tunnelMenuItem.representedObject as? TunnelContainer else { return }
|
||||||
|
|||||||
Reference in New Issue
Block a user