Fix toolbar items that change their images based on current state

This commit is contained in:
Maurice Parker
2022-11-12 11:21:44 -06:00
parent d9a24e039c
commit 0e0d194ec9
2 changed files with 10 additions and 16 deletions

View File

@@ -1147,16 +1147,13 @@ private extension MainWindowController {
if let toolbarItem = item as? NSToolbarItem {
toolbarItem.toolTip = commandName
toolbarItem.image = markingRead ? AppAssets.readClosedImage : AppAssets.readOpenImage
}
if let menuItem = item as? NSMenuItem {
menuItem.title = commandName
}
if let toolbarItem = item as? NSToolbarItem, let button = toolbarItem.view as? NSButton {
button.image = markingRead ? AppAssets.readClosedImage : AppAssets.readOpenImage
}
return result
}
@@ -1237,16 +1234,13 @@ private extension MainWindowController {
if let toolbarItem = item as? NSToolbarItem {
toolbarItem.toolTip = commandName
toolbarItem.image = starring ? AppAssets.starOpenImage : AppAssets.starClosedImage
}
if let menuItem = item as? NSMenuItem {
menuItem.title = commandName
}
if let toolbarItem = item as? NSToolbarItem, let button = toolbarItem.view as? NSButton {
button.image = starring ? AppAssets.starOpenImage : AppAssets.starClosedImage
}
return result
}
@@ -1269,24 +1263,24 @@ private extension MainWindowController {
guard let isReadFiltered = timelineContainerViewController?.isReadFiltered else {
(item as? NSMenuItem)?.title = hideCommand
if let toolbarItem = item as? NSToolbarItem, let button = toolbarItem.view as? NSButton {
if let toolbarItem = item as? NSToolbarItem {
toolbarItem.toolTip = hideCommand
button.image = AppAssets.filterInactive
toolbarItem.image = AppAssets.filterInactive
}
return false
}
if isReadFiltered {
(item as? NSMenuItem)?.title = showCommand
if let toolbarItem = item as? NSToolbarItem, let button = toolbarItem.view as? NSButton {
if let toolbarItem = item as? NSToolbarItem {
toolbarItem.toolTip = showCommand
button.image = AppAssets.filterActive
toolbarItem.image = AppAssets.filterActive
}
} else {
(item as? NSMenuItem)?.title = hideCommand
if let toolbarItem = item as? NSToolbarItem, let button = toolbarItem.view as? NSButton {
if let toolbarItem = item as? NSToolbarItem {
toolbarItem.toolTip = hideCommand
button.image = AppAssets.filterInactive
toolbarItem.image = AppAssets.filterInactive
}
}