Change to use show/hide verbiage in menu items instead of check marks

This commit is contained in:
Maurice Parker
2019-11-24 04:29:15 -06:00
parent 00094858fa
commit e05fdc99dd
3 changed files with 31 additions and 10 deletions

View File

@@ -238,16 +238,11 @@ class MainWindowController : NSWindowController, NSUserInterfaceValidations {
}
if item.action == #selector(toggleReadFeedsFilter(_:)) {
(item as! NSMenuItem).state = sidebarViewController?.isReadFiltered ?? false ? .on : .off
return validateToggleReadFeeds(item)
}
if item.action == #selector(toggleReadArticlesFilter(_:)) {
if let timelineContainer = timelineContainerViewController {
(item as! NSMenuItem).isEnabled = true
(item as! NSMenuItem).state = timelineContainer.isReadFiltered ? .on : .off
} else {
(item as! NSMenuItem).isEnabled = false
}
return validateToggleReadArticles(item)
}
if item.action == #selector(toggleSidebar(_:)) {
@@ -832,6 +827,30 @@ private extension MainWindowController {
return result
}
func validateToggleReadFeeds(_ item: NSValidatedUserInterfaceItem) -> Bool {
guard let menuItem = item as? NSMenuItem else { return false }
let showCommand = NSLocalizedString("Show Read Feeds", comment: "Command")
let hideCommand = NSLocalizedString("Hide Read Feeds", comment: "Command")
menuItem.title = sidebarViewController?.isReadFiltered ?? false ? showCommand : hideCommand
return true
}
func validateToggleReadArticles(_ item: NSValidatedUserInterfaceItem) -> Bool {
guard let menuItem = item as? NSMenuItem else { return false }
let showCommand = NSLocalizedString("Show Read Articles", comment: "Command")
let hideCommand = NSLocalizedString("Hide Read Articles", comment: "Command")
if let isReadFiltered = timelineContainerViewController?.isReadFiltered {
menuItem.title = isReadFiltered ? showCommand : hideCommand
return true
} else {
menuItem.title = hideCommand
return false
}
}
// MARK: - Misc.