Compare commits
2 commits
390e7e526b
...
210a8167b8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
210a8167b8 | ||
|
|
778671e751 |
|
|
@ -86,6 +86,9 @@ class AppDelegate: NSObject, NSApplicationDelegate {
|
|||
menu.addItem(upgradeAllItem)
|
||||
upgradeOnlyItem = NSMenuItem(title: "🎯 Upgrade only…", action: nil, keyEquivalent: "")
|
||||
let upgradeOnlySubmenu = NSMenu()
|
||||
// manual isEnabled control below; otherwise AppKit re-enables the
|
||||
// items from the responder chain every time the menu opens
|
||||
upgradeOnlySubmenu.autoenablesItems = false
|
||||
upgradeFormulaeItem = NSMenuItem(title: "Formulae", action: #selector(upgradeFormulaeOnly), keyEquivalent: "")
|
||||
upgradeCasksItem = NSMenuItem(title: "Casks", action: #selector(upgradeCasksOnly), keyEquivalent: "")
|
||||
upgradeOnlySubmenu.addItem(upgradeFormulaeItem)
|
||||
|
|
@ -570,11 +573,13 @@ class AppDelegate: NSObject, NSApplicationDelegate {
|
|||
outdatedSubmenu.removeAllItems()
|
||||
outdatedItem.isHidden = outdated.isEmpty
|
||||
upgradeAllItem.isHidden = outdated.isEmpty
|
||||
// "only" is meaningful only when both kinds are outdated; with a
|
||||
// single kind, the main item already upgrades exactly what there is
|
||||
upgradeOnlyItem.isHidden = outdated.formulae.isEmpty || outdated.casks.isEmpty
|
||||
upgradeFormulaeItem.title = "Formulae (\(outdated.formulae.count))"
|
||||
upgradeCasksItem.title = "Casks (\(outdated.casks.count))"
|
||||
// visible whenever anything is outdated; a kind with nothing to
|
||||
// upgrade stays listed but greyed out
|
||||
upgradeOnlyItem.isHidden = outdated.isEmpty
|
||||
upgradeFormulaeItem.title = outdated.formulae.isEmpty ? "Formulae" : "Formulae (\(outdated.formulae.count))"
|
||||
upgradeFormulaeItem.isEnabled = !outdated.formulae.isEmpty
|
||||
upgradeCasksItem.title = outdated.casks.isEmpty ? "Casks" : "Casks (\(outdated.casks.count))"
|
||||
upgradeCasksItem.isEnabled = !outdated.casks.isEmpty
|
||||
|
||||
for package in outdated.all {
|
||||
let item = NSMenuItem(title: package.label, action: #selector(upgradeSingle(_:)), keyEquivalent: "")
|
||||
|
|
|
|||
Loading…
Reference in a new issue