diff --git a/Lantern/BrowserMenuController.swift b/Lantern/BrowserMenuController.swift index cd68636..fe40c98 100644 --- a/Lantern/BrowserMenuController.swift +++ b/Lantern/BrowserMenuController.swift @@ -38,7 +38,7 @@ class BrowserMenuController: NSObject, NSUserInterfaceValidations { var browserPreferencesObserver: NotificationObserver! var browserPrefences: BrowserPreferences { - return BrowserPreferences.sharedBrowserPreferences + return BrowserPreferences.shared } init(browserWidthPlaceholderMenuItem: NSMenuItem) { @@ -60,7 +60,7 @@ class BrowserMenuController: NSObject, NSUserInterfaceValidations { // return (chosenWidthChoice == widthChoice) ? NSOnState : NSOffState // } widthMenuItemsAssistant.customization.additionalSetUp = { widthChoice, menuItem in - let chosenWidthChoice = BrowserPreferences.sharedBrowserPreferences.widthChoice + let chosenWidthChoice = BrowserPreferences.shared.widthChoice menuItem.state = (chosenWidthChoice == widthChoice) ? NSControl.StateValue.on : NSControl.StateValue.off } @@ -78,7 +78,7 @@ class BrowserMenuController: NSObject, NSUserInterfaceValidations { } func startObservingBrowserPreferences() { - browserPreferencesObserver = NotificationObserver(object: BrowserPreferences.sharedBrowserPreferences) + browserPreferencesObserver = NotificationObserver(object: BrowserPreferences.shared) browserPreferencesObserver.observe(.widthChoiceDidChange) { notification in self.updateWidthMenu() @@ -95,7 +95,7 @@ class BrowserMenuController: NSObject, NSUserInterfaceValidations { menuItem = sender as? NSMenuItem, let widthChoice = widthMenuItemsAssistant.itemRepresentative(for: menuItem) { - BrowserPreferences.sharedBrowserPreferences.widthChoice = widthChoice + BrowserPreferences.shared.widthChoice = widthChoice } } diff --git a/Lantern/BrowserPreferences.swift b/Lantern/BrowserPreferences.swift index 2d30aa4..0f9f7ed 100644 --- a/Lantern/BrowserPreferences.swift +++ b/Lantern/BrowserPreferences.swift @@ -91,13 +91,13 @@ class BrowserPreferences { } } - func updateFromDefaults() { + private func updateFromDefaults() { widthChoice = ud.choice(BrowserWidthChoice.self) } - init() { + private init() { updateFromDefaults() } - static var sharedBrowserPreferences = BrowserPreferences() + static var shared = BrowserPreferences() } diff --git a/Lantern/CrawlerMenuController.swift b/Lantern/CrawlerMenuController.swift index a6db181..d6a6b35 100644 --- a/Lantern/CrawlerMenuController.swift +++ b/Lantern/CrawlerMenuController.swift @@ -43,7 +43,7 @@ class CrawlerMenuController: NSObject, NSUserInterfaceValidations { // return (chosenImageDownloadChoice == imageDownloadChoice) ? NSOnState : NSOffState // } imageDownloadMenuItemsAssistant.customization.additionalSetUp = { imageDownloadChoice, menuItem in - let chosenImageDownloadChoice = CrawlerPreferences.sharedCrawlerPreferences.imageDownloadChoice + let chosenImageDownloadChoice = CrawlerPreferences.shared.imageDownloadChoice menuItem.state = (chosenImageDownloadChoice == imageDownloadChoice) ? NSControl.StateValue.on : NSControl.StateValue.off } @@ -61,7 +61,7 @@ class CrawlerMenuController: NSObject, NSUserInterfaceValidations { } func startObservingCrawlerPreferences() { - crawlerPreferencesObserver = NotificationObserver(object: CrawlerPreferences.sharedCrawlerPreferences) + crawlerPreferencesObserver = NotificationObserver(object: CrawlerPreferences.shared) crawlerPreferencesObserver.observe(.ImageDownloadChoiceDidChange) { notification in self.updateImageDownloadMenu() @@ -78,7 +78,7 @@ class CrawlerMenuController: NSObject, NSUserInterfaceValidations { menuItem = sender as? NSMenuItem, let imageDownloadChoice = imageDownloadMenuItemsAssistant.itemRepresentative(for: menuItem) { - CrawlerPreferences.sharedCrawlerPreferences.imageDownloadChoice = imageDownloadChoice + CrawlerPreferences.shared.imageDownloadChoice = imageDownloadChoice } } diff --git a/Lantern/CrawlerPreferences.swift b/Lantern/CrawlerPreferences.swift index 18b0156..94b84c3 100644 --- a/Lantern/CrawlerPreferences.swift +++ b/Lantern/CrawlerPreferences.swift @@ -87,5 +87,5 @@ class CrawlerPreferences { updateFromDefaults() } - static var sharedCrawlerPreferences = CrawlerPreferences() + static var shared = CrawlerPreferences() } diff --git a/Lantern/MainState.swift b/Lantern/MainState.swift index 8f3c587..478c095 100644 --- a/Lantern/MainState.swift +++ b/Lantern/MainState.swift @@ -30,8 +30,8 @@ func ==(lhs: SiteChoice, rhs: SiteChoice) -> Bool { class MainState { - let crawlerPreferences = CrawlerPreferences.sharedCrawlerPreferences - let browserPreferences = BrowserPreferences.sharedBrowserPreferences + let crawlerPreferences = CrawlerPreferences.shared + let browserPreferences = BrowserPreferences.shared var siteChoice = SiteChoice.custom { didSet { diff --git a/Lantern/MainWindowController.swift b/Lantern/MainWindowController.swift index f84a06f..7c1dc71 100644 --- a/Lantern/MainWindowController.swift +++ b/Lantern/MainWindowController.swift @@ -326,16 +326,15 @@ class MainWindowToolbarAssistant: NSObject, NSToolbarDelegate { toggleViewControl.setSelected(shownViews.contains(.meta), forSegment: 1) } - //var viewportWidthAssistant: SegmentedControlAssistant? var viewportWidthAssistant: PopUpButtonAssistant? @IBAction func changeViewportWidth(_ sender: Any?) { guard let widthChoice = viewportWidthAssistant?.selectedItemRepresentative else { return } - BrowserPreferences.sharedBrowserPreferences.widthChoice = widthChoice + BrowserPreferences.shared.widthChoice = widthChoice } var browserPreferencesObserver: NotificationObserver! func startObservingBrowserPreferences() { - let preferences = BrowserPreferences.sharedBrowserPreferences + let preferences = BrowserPreferences.shared browserPreferencesObserver = NotificationObserver(object: preferences) browserPreferencesObserver.observe(.widthChoiceDidChange) { notification in @@ -385,10 +384,12 @@ class MainWindowToolbarAssistant: NSObject, NSToolbarDelegate { popUpButton.target = self popUpButton.action = #selector(changeViewportWidth(_:)) + let preferences = BrowserPreferences.shared let assistant = PopUpButtonAssistant(popUpButton: popUpButton) assistant.menuItemRepresentatives = BrowserWidthChoice.allChoices - //print(assistant.defaultSegmentedItemRepresentatives) + print("WIDTH \(preferences.widthChoice)") assistant.update() + assistant.selectedUniqueIdentifier = preferences.widthChoice self.viewportWidthAssistant = assistant } else if itemIdentifier == "showToggles" { diff --git a/Lantern/StatsViewController.swift b/Lantern/StatsViewController.swift index 7e6b8f2..010d223 100644 --- a/Lantern/StatsViewController.swift +++ b/Lantern/StatsViewController.swift @@ -257,7 +257,7 @@ class StatsViewController: NSViewController { var rowMenu: NSMenu! var rowMenuAssistant: MenuAssistant! - let crawlerPreferences = CrawlerPreferences.sharedCrawlerPreferences + let crawlerPreferences = CrawlerPreferences.shared var crawlerPreferencesObserver: NotificationObserver!