mirror of
https://github.com/Ranchero-Software/NetNewsWire
synced 2025-08-12 06:26:36 +00:00
Make progress on wiring views back together to handle selection changes.
This commit is contained in:
@@ -70,6 +70,7 @@ class MainWindowController : NSWindowController, NSUserInterfaceValidations {
|
||||
sidebarViewController.delegate = self
|
||||
|
||||
timelineContainerViewController = splitViewController?.splitViewItems[1].viewController as? TimelineContainerViewController
|
||||
timelineContainerViewController.delegate = self
|
||||
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(applicationWillTerminate(_:)), name: NSApplication.willTerminateNotification, object: nil)
|
||||
|
||||
@@ -369,7 +370,7 @@ class MainWindowController : NSWindowController, NSUserInterfaceValidations {
|
||||
|
||||
extension MainWindowController: SidebarDelegate {
|
||||
|
||||
func sidebarSelectionDidChange(to selectedObjects: [AnyObject]?) {
|
||||
func sidebarSelectionDidChange(_: SidebarViewController, selectedObjects: [AnyObject]?) {
|
||||
// TODO: if searching, cancel search
|
||||
timelineContainerViewController.setRepresentedObjects(selectedObjects, mode: .regular)
|
||||
timelineContainerViewController.showTimeline(.regular)
|
||||
@@ -378,6 +379,22 @@ extension MainWindowController: SidebarDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - TimelineContainerViewControllerDelegate
|
||||
|
||||
extension MainWindowController: TimelineContainerViewControllerDelegate {
|
||||
|
||||
func timelineSelectionDidChange(_: TimelineContainerViewController, articles: [Article]?, mode: TimelineSourceMode) {
|
||||
let detailState: DetailState
|
||||
if let articles = articles {
|
||||
detailState = articles.count == 1 ? .article(articles.first!) : .multipleSelection
|
||||
}
|
||||
else {
|
||||
detailState = .noSelection
|
||||
}
|
||||
detailViewController?.setState(detailState, mode: mode)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - Scripting Access
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user