   }
 
   private func sortedChildren(of url: URL) -> [FileBrowserItem] {
-    return FileUtils.directDescendants(of: url).map(FileBrowserItem.init).sorted{
-      if ($0.isDir == $1.isDir) {
-        return $0.url.absoluteString < $1.url.absoluteString
+    return FileUtils.directDescendants(of: url)
+      .map(FileBrowserItem.init).sorted {
+        if ($0.isDir == $1.isDir) {
+          return $0.url.absoluteString < $1.url.absoluteString
+        }
+
+        return $0.isDir
       }
-      
-      return $0.isDir
-    }
   }
 
   private func update(_ fileBrowserItem: FileBrowserItem) {

    let pathComps = url.pathComponents
    let childPart = pathComps[rootPathComps.count..<pathComps.count]

    return childPart.reduce(self.root) { (resultItem, childName) -> FileBrowserItem? in
      guard let parent = resultItem else {
        return nil
      }

    self.delegate = self
    self.allowsEmptySelection = true

    guard Bundle.main.loadNibNamed(
      NSNib.Name("FileBrowserMenu"),
      owner: self,
      topLevelObjects: nil
    ) else {
      NSLog("WARN: FileBrowserMenu.xib could not be loaded")
      return
    }

    // If the target of the menu items is set to the first responder,
    // the actions are not invoked at all when the file monitor fires
    // in the background... Dunno why it worked before the redesign... -_-
    self.menu?.items.forEach { $0.target = self }

    self.doubleAction = #selector(FileOutlineView.doubleClickAction)
