 
   required init?(coder: NSCoder) {
     fatalError("init(coder:) has not been implemented")
+  }
+
+  fileprivate func reloadData(for state: StateType) -> Bool {
+    if self.isShowHidden != state.fileBrowserShowHidden {
+      return true
+    }
+
+    if state.cwd != self.cwd {
+      return true
+    }
+
+    return false
   }
 
   fileprivate func update(_ url: URL) {

    self.doubleAction = #selector(FileOutlineView.doubleClickAction)

    source
      .filter { state in
        return state.lastFileSystemUpdate.mark != self.lastFileSystemUpdateMark
      }
      .throttle(2 * FileMonitor.fileSystemEventsLatency + 1,
                latest: true,
                scheduler: SerialDispatchQueueScheduler(qos: .background))

          self.beFirstResponder()
        }

        guard self.reloadData(for: state) else {
          return
        }

        self.isShowHidden = state.fileBrowserShowHidden
        self.lastFileSystemUpdateMark = state.lastFileSystemUpdate.mark
        self.root = FileBrowserItem(state.cwd)
        self.reloadData()
      })
      .disposed(by: self.disposeBag)
  }
