mirror of
https://github.com/passepartoutvpn/wireguard-apple.git
synced 2025-03-03 12:12:24 +00:00
macOS: Networks should show allowedIPs and disappear when inactive
This commit is contained in:
parent
670673cccc
commit
fe1840b028
@ -63,6 +63,7 @@ class StatusMenu: NSMenu {
|
||||
addItem(statusMenuItem)
|
||||
let networksMenuItem = NSMenuItem(title: tr("macMenuNetworksInactive"), action: #selector(manageTunnelsClicked), keyEquivalent: "")
|
||||
networksMenuItem.isEnabled = false
|
||||
networksMenuItem.isHidden = true
|
||||
addItem(networksMenuItem)
|
||||
self.statusMenuItem = statusMenuItem
|
||||
self.networksMenuItem = networksMenuItem
|
||||
@ -98,14 +99,15 @@ class StatusMenu: NSMenu {
|
||||
|
||||
if tunnel.status == .inactive {
|
||||
networksMenuItem.title = tr("macMenuNetworksInactive")
|
||||
networksMenuItem.isHidden = true
|
||||
} else {
|
||||
let addresses = tunnel.tunnelConfiguration?.interface.addresses ?? []
|
||||
let addressesString = addresses.map { $0.stringRepresentation }.joined(separator: ", ")
|
||||
if addressesString.isEmpty {
|
||||
networksMenuItem.title = tr("macMenuNetworksNone")
|
||||
let allowedIPs = tunnel.tunnelConfiguration?.peers.flatMap { $0.allowedIPs }.map { $0.stringRepresentation }.joined(separator: ", ") ?? ""
|
||||
if !allowedIPs.isEmpty {
|
||||
networksMenuItem.title = tr(format: "macMenuNetworks (%@)", allowedIPs)
|
||||
} else {
|
||||
networksMenuItem.title = tr(format: "macMenuNetworks (%@)", addressesString)
|
||||
networksMenuItem.title = tr("macMenuNetworksNone")
|
||||
}
|
||||
networksMenuItem.isHidden = false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user