Update sidebar when adding a folder.
This commit is contained in:
parent
3812c216b2
commit
aca8acea7c
@ -14,14 +14,17 @@ import Account
|
||||
@objc class SidebarViewController: NSViewController, NSOutlineViewDelegate, NSOutlineViewDataSource {
|
||||
|
||||
@IBOutlet var outlineView: NSOutlineView!
|
||||
let treeController = TreeController(delegate: SidebarTreeControllerDelegate())
|
||||
let treeControllerDelegate = SidebarTreeControllerDelegate()
|
||||
lazy var treeController: TreeController = {
|
||||
TreeController(delegate: treeControllerDelegate)
|
||||
}()
|
||||
|
||||
//MARK: NSViewController
|
||||
|
||||
override func viewDidLoad() {
|
||||
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(unreadCountDidChange(_:)), name: .UnreadCountDidChange, object: nil)
|
||||
// NotificationCenter.default.addObserver(self, selector: #selector(folderChildrenDidChange(_:)), name: NSNotification.Name(rawValue: FolderChildrenDidChangeNotification), object: nil)
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(containerChildrenDidChange(_:)), name: .ChildrenDidChange, object: nil)
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(userDidAddFeed(_:)), name: UserDidAddFeedNotification, object: nil)
|
||||
NotificationCenter.default.addObserver(self, selector: #selector(batchUpdateDidFinish(_:)), name: .BatchUpdateDidFinish, object: nil)
|
||||
|
||||
@ -38,7 +41,7 @@ import Account
|
||||
let _ = configureCellsForRepresentedObject(representedObject as AnyObject)
|
||||
}
|
||||
|
||||
@objc dynamic func folderChildrenDidChange(_ note: Notification) {
|
||||
@objc dynamic func containerChildrenDidChange(_ note: Notification) {
|
||||
|
||||
rebuildTreeAndReloadDataIfNeeded()
|
||||
}
|
||||
|
@ -192,6 +192,7 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container,
|
||||
children += [folder]
|
||||
dirty = true
|
||||
|
||||
postChildrenDidChangeNotification()
|
||||
return folder
|
||||
}
|
||||
|
||||
|
@ -17,7 +17,7 @@ public typealias NodeVisitBlock = (_ : Node) -> Void
|
||||
|
||||
public final class TreeController {
|
||||
|
||||
fileprivate weak var delegate: TreeControllerDelegate?
|
||||
private weak var delegate: TreeControllerDelegate?
|
||||
public let rootNode: Node
|
||||
|
||||
public init(delegate: TreeControllerDelegate, rootNode: Node) {
|
||||
|
14
ToDo.opml
14
ToDo.opml
@ -6,16 +6,18 @@
|
||||
</editor> -->
|
||||
<title>ToDo</title>
|
||||
<dateCreated>Tue, 12 Sep 2017 20:15:17 GMT</dateCreated>
|
||||
<expansionState>0,12,20,23,24,27,31,37,45,46,48,63,68</expansionState>
|
||||
<expansionState>0,14,22,25,26,29,33,39,47,48,50,65,70</expansionState>
|
||||
<vertScrollState>0</vertScrollState>
|
||||
<windowTop>581</windowTop>
|
||||
<windowLeft>54</windowLeft>
|
||||
<windowRight>786</windowRight>
|
||||
<windowBottom>1340</windowBottom>
|
||||
<windowTop>632</windowTop>
|
||||
<windowLeft>48</windowLeft>
|
||||
<windowRight>780</windowRight>
|
||||
<windowBottom>1391</windowBottom>
|
||||
</head>
|
||||
<body>
|
||||
<outline text="App">
|
||||
<outline text="Make adding a Folder work — the sidebar should update"/>
|
||||
<outline text="Make New Folder a default toolbar item"/>
|
||||
<outline text="Bug: sidebar tree controller duplicates items after adding a folder"/>
|
||||
<outline text="On change sidebar selection, load articles before updating unread count"/>
|
||||
<outline text="Update Sparkle"/>
|
||||
<outline text="Use new app icon"/>
|
||||
<outline text="Set -NSApplicationCrashOnExceptions YES"/>
|
||||
|
Loading…
x
Reference in New Issue
Block a user