Create shared AppDefaults and delete platform-specific AppDefaults.

This commit is contained in:
Brent Simmons
2025-01-26 21:06:22 -08:00
parent d9d47749ef
commit 2f12d9f803
46 changed files with 858 additions and 895 deletions

View File

@@ -131,7 +131,7 @@ final class AddAccountViewController: UITableViewController, AddAccountDismissDe
case AddAccountSections.icloud.rawValue:
cell.comboNameLabel?.text = AddAccountSections.icloud.sectionContent[indexPath.row].localizedAccountName()
cell.comboImage?.image = AppAssets.image(for: AddAccountSections.icloud.sectionContent[indexPath.row])
if AppDefaults.shared.isDeveloperBuild || AccountManager.shared.accounts.contains(where: { $0.type == .cloudKit }) {
if AppDefaults.isDeveloperBuild || AccountManager.shared.accounts.contains(where: { $0.type == .cloudKit }) {
cell.isUserInteractionEnabled = false
cell.comboNameLabel?.isEnabled = false
}
@@ -139,7 +139,7 @@ final class AddAccountViewController: UITableViewController, AddAccountDismissDe
cell.comboNameLabel?.text = AddAccountSections.web.sectionContent[indexPath.row].localizedAccountName()
cell.comboImage?.image = AppAssets.image(for: AddAccountSections.web.sectionContent[indexPath.row])
let type = AddAccountSections.web.sectionContent[indexPath.row]
if (type == .feedly || type == .inoreader) && AppDefaults.shared.isDeveloperBuild {
if (type == .feedly || type == .inoreader) && AppDefaults.isDeveloperBuild {
cell.isUserInteractionEnabled = false
cell.comboNameLabel?.isEnabled = false
}

View File

@@ -49,19 +49,19 @@ final class SettingsViewController: UITableViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
if AppDefaults.shared.timelineSortDirection == .orderedAscending {
if AppDefaults.timelineSortDirection == .orderedAscending {
timelineSortOrderSwitch.isOn = true
} else {
timelineSortOrderSwitch.isOn = false
}
if AppDefaults.shared.timelineGroupByFeed {
if AppDefaults.timelineGroupByFeed {
groupByFeedSwitch.isOn = true
} else {
groupByFeedSwitch.isOn = false
}
if AppDefaults.shared.refreshClearsReadArticles {
if AppDefaults.refreshClearsReadArticles {
refreshClearsReadArticlesSwitch.isOn = true
} else {
refreshClearsReadArticlesSwitch.isOn = false
@@ -69,13 +69,13 @@ final class SettingsViewController: UITableViewController {
articleThemeDetailLabel.text = ArticleThemesManager.shared.currentTheme.name
if AppDefaults.shared.confirmMarkAllAsRead {
if AppDefaults.confirmMarkAllAsRead {
confirmMarkAllAsReadSwitch.isOn = true
} else {
confirmMarkAllAsReadSwitch.isOn = false
}
if AppDefaults.shared.articleFullscreenAvailable {
if AppDefaults.articleFullscreenAvailable {
showFullscreenArticlesSwitch.isOn = true
} else {
showFullscreenArticlesSwitch.isOn = false
@@ -83,7 +83,7 @@ final class SettingsViewController: UITableViewController {
colorPaletteDetailLabel.text = String(describing: AppDefaults.userInterfaceColorPalette)
openLinksInNetNewsWire.isOn = !AppDefaults.shared.useSystemBrowser
openLinksInNetNewsWire.isOn = !AppDefaults.useSystemBrowser
let buildLabel = NonIntrinsicLabel(frame: CGRect(x: 32.0, y: 0.0, width: 0.0, height: 0.0))
buildLabel.font = UIFont.systemFont(ofSize: 11.0)
@@ -261,49 +261,49 @@ final class SettingsViewController: UITableViewController {
@IBAction func switchTimelineOrder(_ sender: Any) {
if timelineSortOrderSwitch.isOn {
AppDefaults.shared.timelineSortDirection = .orderedAscending
AppDefaults.timelineSortDirection = .orderedAscending
} else {
AppDefaults.shared.timelineSortDirection = .orderedDescending
AppDefaults.timelineSortDirection = .orderedDescending
}
}
@IBAction func switchGroupByFeed(_ sender: Any) {
if groupByFeedSwitch.isOn {
AppDefaults.shared.timelineGroupByFeed = true
AppDefaults.timelineGroupByFeed = true
} else {
AppDefaults.shared.timelineGroupByFeed = false
AppDefaults.timelineGroupByFeed = false
}
}
@IBAction func switchClearsReadArticles(_ sender: Any) {
if refreshClearsReadArticlesSwitch.isOn {
AppDefaults.shared.refreshClearsReadArticles = true
AppDefaults.refreshClearsReadArticles = true
} else {
AppDefaults.shared.refreshClearsReadArticles = false
AppDefaults.refreshClearsReadArticles = false
}
}
@IBAction func switchConfirmMarkAllAsRead(_ sender: Any) {
if confirmMarkAllAsReadSwitch.isOn {
AppDefaults.shared.confirmMarkAllAsRead = true
AppDefaults.confirmMarkAllAsRead = true
} else {
AppDefaults.shared.confirmMarkAllAsRead = false
AppDefaults.confirmMarkAllAsRead = false
}
}
@IBAction func switchFullscreenArticles(_ sender: Any) {
if showFullscreenArticlesSwitch.isOn {
AppDefaults.shared.articleFullscreenAvailable = true
AppDefaults.articleFullscreenAvailable = true
} else {
AppDefaults.shared.articleFullscreenAvailable = false
AppDefaults.articleFullscreenAvailable = false
}
}
@IBAction func switchBrowserPreference(_ sender: Any) {
if openLinksInNetNewsWire.isOn {
AppDefaults.shared.useSystemBrowser = false
AppDefaults.useSystemBrowser = false
} else {
AppDefaults.shared.useSystemBrowser = true
AppDefaults.useSystemBrowser = true
}
}

View File

@@ -27,11 +27,11 @@ final class TimelineCustomizerViewController: UIViewController {
super.viewDidLoad()
iconSizeSliderContainerView.layer.cornerRadius = 10
iconSizeSlider.value = Float(AppDefaults.shared.timelineIconSize.rawValue)
iconSizeSlider.value = Float(AppDefaults.timelineIconSize.rawValue)
iconSizeSlider.addTickMarks()
numberOfLinesSliderContainerView.layer.cornerRadius = 10
numberOfLinesSlider.value = Float(AppDefaults.shared.timelineNumberOfLines)
numberOfLinesSlider.value = Float(AppDefaults.timelineNumberOfLines)
numberOfLinesSlider.addTickMarks()
}
@@ -48,12 +48,12 @@ final class TimelineCustomizerViewController: UIViewController {
@IBAction func iconSizeChanged(_ sender: Any) {
guard let iconSize = IconSize(rawValue: Int(iconSizeSlider.value.rounded())) else { return }
AppDefaults.shared.timelineIconSize = iconSize
AppDefaults.timelineIconSize = iconSize
updatePreview()
}
@IBAction func numberOfLinesChanged(_ sender: Any) {
AppDefaults.shared.timelineNumberOfLines = Int(numberOfLinesSlider.value.rounded())
AppDefaults.timelineNumberOfLines = Int(numberOfLinesSlider.value.rounded())
updatePreview()
}

View File

@@ -92,8 +92,8 @@ private extension TimelinePreviewTableViewController {
feedName: "Feed Name",
byline: nil, iconImage: iconImage,
showIcon: true,
numberOfLines: AppDefaults.shared.timelineNumberOfLines,
iconSize: AppDefaults.shared.timelineIconSize
numberOfLines: AppDefaults.timelineNumberOfLines,
iconSize: AppDefaults.timelineIconSize
)
}
}