Merge pull request #3741 from stuartbreckenridge/3739

Fixes theme menu picker
This commit is contained in:
Maurice Parker
2022-11-12 10:44:00 -06:00
committed by GitHub
2 changed files with 6 additions and 5 deletions

View File

@@ -1458,7 +1458,7 @@ private extension MainWindowController {
let defaultThemeItem = NSMenuItem()
defaultThemeItem.title = ArticleTheme.defaultTheme.name
defaultThemeItem.action = #selector(selectArticleTheme(_:))
defaultThemeItem.state = defaultThemeItem.title == ArticleThemesManager.shared.currentThemeName ? .on : .off
defaultThemeItem.state = defaultThemeItem.title == ArticleThemesManager.shared.currentTheme.name ? .on : .off
articleThemeMenu.addItem(defaultThemeItem)
articleThemeMenu.addItem(NSMenuItem.separator())
@@ -1467,7 +1467,7 @@ private extension MainWindowController {
let themeItem = NSMenuItem()
themeItem.title = themeName
themeItem.action = #selector(selectArticleTheme(_:))
themeItem.state = themeItem.title == ArticleThemesManager.shared.currentThemeName ? .on : .off
themeItem.state = themeItem.title == ArticleThemesManager.shared.currentTheme.name ? .on : .off
articleThemeMenu.addItem(themeItem)
}

View File

@@ -11,8 +11,9 @@ import WebKit
import Account
import Articles
import SafariServices
import RSCore
class ArticleViewController: UIViewController, MainControllerIdentifiable {
class ArticleViewController: UIViewController, MainControllerIdentifiable, Logging {
typealias State = (extractedArticle: ExtractedArticle?,
isShowingExtractedArticle: Bool,
@@ -259,7 +260,7 @@ class ArticleViewController: UIViewController, MainControllerIdentifiable {
identifier: nil,
discoverabilityTitle: nil,
attributes: [],
state: ArticleThemesManager.shared.currentThemeName == themeName ? .on : .off,
state: ArticleThemesManager.shared.currentTheme.name == themeName ? .on : .off,
handler: { action in
ArticleThemesManager.shared.currentThemeName = themeName
})
@@ -271,7 +272,7 @@ class ArticleViewController: UIViewController, MainControllerIdentifiable {
identifier: nil,
discoverabilityTitle: nil,
attributes: [],
state: ArticleThemesManager.shared.currentThemeName == AppDefaults.defaultThemeName ? .on : .off,
state: ArticleThemesManager.shared.currentTheme.name == AppDefaults.defaultThemeName ? .on : .off,
handler: { _ in
ArticleThemesManager.shared.currentThemeName = AppDefaults.defaultThemeName
})