diff options
author | Roopesh Chander <roop@roopc.net> | 2019-01-09 03:14:59 +0530 |
---|---|---|
committer | Roopesh Chander <roop@roopc.net> | 2019-01-14 14:52:36 +0530 |
commit | 53e915c57854ab9f579660af32739381e80e5637 (patch) | |
tree | a00137a6439c14eac1a7b883765090fb13e40a9d /WireGuard/WireGuard | |
parent | macOS: Get the app back in focus after macOS' VPN prompt (diff) | |
download | wireguard-apple-53e915c57854ab9f579660af32739381e80e5637.tar.xz wireguard-apple-53e915c57854ab9f579660af32739381e80e5637.zip |
macOS: Quit menu item
Signed-off-by: Roopesh Chander <roop@roopc.net>
Diffstat (limited to 'WireGuard/WireGuard')
-rw-r--r-- | WireGuard/WireGuard/Base.lproj/Localizable.strings | 1 | ||||
-rw-r--r-- | WireGuard/WireGuard/UI/macOS/StatusMenu.swift | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/WireGuard/WireGuard/Base.lproj/Localizable.strings b/WireGuard/WireGuard/Base.lproj/Localizable.strings index 4605040..369cfcc 100644 --- a/WireGuard/WireGuard/Base.lproj/Localizable.strings +++ b/WireGuard/WireGuard/Base.lproj/Localizable.strings @@ -232,6 +232,7 @@ "macMenuAddEmptyTunnel" = "Add empty tunnel..."; "macMenuExportLog" = "Export log to file..."; "macMenuExportTunnels" = "Export tunnels to zip..."; +"macMenuQuit" = "Quit"; // Mac manage tunnels window diff --git a/WireGuard/WireGuard/UI/macOS/StatusMenu.swift b/WireGuard/WireGuard/UI/macOS/StatusMenu.swift index add91ae..a8a913f 100644 --- a/WireGuard/WireGuard/UI/macOS/StatusMenu.swift +++ b/WireGuard/WireGuard/UI/macOS/StatusMenu.swift @@ -41,6 +41,8 @@ class StatusMenu: NSMenu { addItem(NSMenuItem.separator()) } addTunnelManagementItems() + addItem(NSMenuItem.separator()) + addApplicationItems() } required init(coder decoder: NSCoder) { @@ -118,6 +120,12 @@ class StatusMenu: NSMenu { 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) { guard let tunnelMenuItem = sender as? NSMenuItem else { return } guard let tunnel = tunnelMenuItem.representedObject as? TunnelContainer else { return } |