diff --git a/src/components/FileExplorer.js b/src/components/FileExplorer.js index 499547b..399be37 100644 --- a/src/components/FileExplorer.js +++ b/src/components/FileExplorer.js @@ -157,15 +157,15 @@ export default class List extends React.Component { this.tasksAfterRender.push(DOMHelper.focusSearchInput) } - toggleNodeExpand = node => { + toggleNodeExpand = (node, skipScrollToNode) => { this.visibleNodesGenerator.toggleExpand(node) - this.focusNode(node) + this.focusNode(node, skipScrollToNode) this.tasksAfterRender.push(DOMHelper.focusFileExplorer) } - focusNode = node => { + focusNode = (node, skipScroll) => { this.visibleNodesGenerator.focusNode(node) - if (node) { + if (node && !skipScroll) { // when focus a node not in viewport(by keyboard), scroll to it const { visibleNodes: { nodes } } = this.state const indexOfToBeFocusedNode = nodes.indexOf(node) diff --git a/src/components/Node.js b/src/components/Node.js index 0395d3f..c78b2ed 100644 --- a/src/components/Node.js +++ b/src/components/Node.js @@ -17,10 +17,10 @@ function getIconType(node) { } export default class Node extends React.PureComponent { - onNodeClick = (...args) => { + onNodeClick = () => { const { node, toggleExpand } = this.props if (node.type === 'tree') { - toggleExpand(node, ...args) + toggleExpand(node, true) } else { DOMHelper.loadWithPJAX(node.url) }