     self.insertItems(at: IndexSet(indicesToInsert), inParent: parent)
   }
 
-  fileprivate func handleChildren(for fileBrowserItem: FileBrowserItem, new newChildren: [FileBrowserItem]) {
-    let curChildren = fileBrowserItem.children
-
-    let curPreparedChildren = self.prepare(curChildren)
-    let newPreparedChildren = self.prepare(newChildren)
-
-    let keptChildren = curPreparedChildren.filter { newPreparedChildren.contains($0) }
-    let childrenToRecurse = keptChildren.filter { self.isItemExpanded($0) }
-
-    childrenToRecurse.forEach(self.update)
-  }
-
   fileprivate func sortedChildren(of url: URL) -> [FileBrowserItem] {
     return FileUtils.directDescendants(of: url).map(FileBrowserItem.init).sorted()
   }


    self.handleRemovals(for: fileBrowserItem, new: newChildren)
    self.handleAdditions(for: fileBrowserItem, new: newChildren)
    self.handleChildren(for: fileBrowserItem, new: newChildren)
  }

  fileprivate func fileBrowserItem(with url: URL) -> FileBrowserItem? {

  func outlineView(_: NSOutlineView, numberOfChildrenOfItem item: Any?) -> Int {
    if item == nil {
      if self.root.isChildrenScanned == false {
        self.root.children = self.sortedChildren(of: self.cwd)
        self.root.isChildrenScanned = true
      }

