hide Upgrade All when there is nothing to upgrade
Same treatment as the Outdated item: upgradeAllItem becomes a property, starts hidden, and updateOutdatedMenu shows it only when the fetch returns outdated packages. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
15034951fc
commit
9f848be875
|
|
@ -15,6 +15,7 @@ class AppDelegate: NSObject, NSApplicationDelegate {
|
||||||
var statusItem: NSStatusItem!
|
var statusItem: NSStatusItem!
|
||||||
var statusMenuItem: NSMenuItem!
|
var statusMenuItem: NSMenuItem!
|
||||||
var outdatedItem: NSMenuItem!
|
var outdatedItem: NSMenuItem!
|
||||||
|
var upgradeAllItem: NSMenuItem!
|
||||||
var outdatedSubmenu: NSMenu!
|
var outdatedSubmenu: NSMenu!
|
||||||
var versionItem: NSMenuItem!
|
var versionItem: NSMenuItem!
|
||||||
|
|
||||||
|
|
@ -53,7 +54,9 @@ class AppDelegate: NSObject, NSApplicationDelegate {
|
||||||
menu.addItem(NSMenuItem.separator())
|
menu.addItem(NSMenuItem.separator())
|
||||||
|
|
||||||
menu.addItem(NSMenuItem(title: "🔄 Refresh", action: #selector(refreshAction), keyEquivalent: "r"))
|
menu.addItem(NSMenuItem(title: "🔄 Refresh", action: #selector(refreshAction), keyEquivalent: "r"))
|
||||||
menu.addItem(NSMenuItem(title: "📦 Upgrade All", action: #selector(upgradeAll), keyEquivalent: "u"))
|
upgradeAllItem = NSMenuItem(title: "📦 Upgrade All", action: #selector(upgradeAll), keyEquivalent: "u")
|
||||||
|
upgradeAllItem.isHidden = true // shown once a fetch finds outdated packages
|
||||||
|
menu.addItem(upgradeAllItem)
|
||||||
outdatedItem = NSMenuItem(title: "📋 Outdated", action: nil, keyEquivalent: "")
|
outdatedItem = NSMenuItem(title: "📋 Outdated", action: nil, keyEquivalent: "")
|
||||||
outdatedSubmenu = NSMenu()
|
outdatedSubmenu = NSMenu()
|
||||||
outdatedItem.submenu = outdatedSubmenu
|
outdatedItem.submenu = outdatedSubmenu
|
||||||
|
|
@ -295,6 +298,7 @@ class AppDelegate: NSObject, NSApplicationDelegate {
|
||||||
func updateOutdatedMenu(with lines: [String]) {
|
func updateOutdatedMenu(with lines: [String]) {
|
||||||
outdatedSubmenu.removeAllItems()
|
outdatedSubmenu.removeAllItems()
|
||||||
outdatedItem.isHidden = lines.isEmpty
|
outdatedItem.isHidden = lines.isEmpty
|
||||||
|
upgradeAllItem.isHidden = lines.isEmpty
|
||||||
|
|
||||||
for formula in lines {
|
for formula in lines {
|
||||||
let item = NSMenuItem(title: formula, action: #selector(upgradeSingle(_:)), keyEquivalent: "")
|
let item = NSMenuItem(title: formula, action: #selector(upgradeSingle(_:)), keyEquivalent: "")
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue