Web: Files: fixed opening treeFolders nodes for action panels
This commit is contained in:
parent
80aeb705ce
commit
4a94cca3c8
@ -364,8 +364,7 @@ class TreeFolders extends React.Component {
|
||||
const treeData = [...this.props.treeFolders];
|
||||
|
||||
this.getNewTreeData(treeData, listIds, data.folders, 10);
|
||||
this.props.needUpdate && this.props.setTreeFolders(treeData);
|
||||
//this.setState({ treeData });
|
||||
/* this.props.needUpdate && */ this.props.setTreeFolders(treeData);
|
||||
})
|
||||
.catch((err) => toastr.error(err))
|
||||
.finally(() => {
|
||||
@ -374,15 +373,16 @@ class TreeFolders extends React.Component {
|
||||
});
|
||||
};
|
||||
|
||||
onExpand = (data, treeNode) => {
|
||||
onExpand = (expandedKeys, treeNode) => {
|
||||
if (treeNode.node && !treeNode.node.props.children) {
|
||||
if (treeNode.expanded) {
|
||||
this.onLoadData(treeNode.node, true);
|
||||
}
|
||||
}
|
||||
if (this.props.needUpdate) {
|
||||
const expandedKeys = data;
|
||||
this.props.setExpandedKeys(expandedKeys);
|
||||
} else {
|
||||
this.props.setExpandedPanelKeys(expandedKeys);
|
||||
}
|
||||
};
|
||||
|
||||
@ -431,9 +431,9 @@ class TreeFolders extends React.Component {
|
||||
onSelect,
|
||||
dragging,
|
||||
expandedKeys,
|
||||
expandedPanelKeys,
|
||||
treeFolders,
|
||||
} = this.props;
|
||||
//const loadProp = needUpdate ? { loadData: this.onLoadData } : {};
|
||||
|
||||
return (
|
||||
<StyledTreeMenu
|
||||
@ -446,9 +446,8 @@ class TreeFolders extends React.Component {
|
||||
switcherIcon={this.switcherIcon}
|
||||
onSelect={onSelect}
|
||||
selectedKeys={selectedKeys}
|
||||
//{...loadProp}
|
||||
loadData={this.onLoadData}
|
||||
expandedKeys={expandedKeys}
|
||||
expandedKeys={expandedPanelKeys ? expandedPanelKeys : expandedKeys}
|
||||
onExpand={this.onExpand}
|
||||
onDragOver={this.onDragOver}
|
||||
onDragLeave={this.onDragLeave}
|
||||
@ -488,6 +487,7 @@ export default inject(
|
||||
isPrivacyFolder,
|
||||
expandedKeys,
|
||||
setExpandedKeys,
|
||||
setExpandedPanelKeys,
|
||||
} = treeFoldersStore;
|
||||
const { id /* rootFolderType */ } = selectedFolderStore;
|
||||
|
||||
@ -510,6 +510,7 @@ export default inject(
|
||||
setTreeFolders,
|
||||
setFilter,
|
||||
setExpandedKeys,
|
||||
setExpandedPanelKeys,
|
||||
};
|
||||
}
|
||||
)(observer(TreeFolders));
|
||||
|
@ -19,6 +19,7 @@ const OperationsPanelComponent = (props) => {
|
||||
currentFolderId,
|
||||
operationsFolders,
|
||||
setCopyPanelVisible,
|
||||
setExpandedPanelKeys,
|
||||
itemOperationToFolder,
|
||||
setMoveToPanelVisible,
|
||||
setThirdPartyMoveDialogVisible,
|
||||
@ -32,6 +33,7 @@ const OperationsPanelComponent = (props) => {
|
||||
|
||||
const onClose = () => {
|
||||
isCopy ? setCopyPanelVisible(false) : setMoveToPanelVisible(false);
|
||||
setExpandedPanelKeys(null);
|
||||
};
|
||||
|
||||
const onSelect = (folder, treeNode) => {
|
||||
@ -102,7 +104,7 @@ const OperationsPanelComponent = (props) => {
|
||||
</ModalDialog.Header>
|
||||
<ModalDialog.Body>
|
||||
<TreeFolders
|
||||
expandedKeys={expandedKeys}
|
||||
expandedPanelKeys={expandedKeys}
|
||||
data={operationsFolders}
|
||||
filter={filter}
|
||||
onSelect={onSelect}
|
||||
@ -127,7 +129,12 @@ export default inject(
|
||||
uploadDataStore,
|
||||
}) => {
|
||||
const { filter, selection } = filesStore;
|
||||
const { isRecycleBinFolder, operationsFolders } = treeFoldersStore;
|
||||
const {
|
||||
isRecycleBinFolder,
|
||||
operationsFolders,
|
||||
setExpandedPanelKeys,
|
||||
expandedPanelKeys,
|
||||
} = treeFoldersStore;
|
||||
const { itemOperationToFolder } = uploadDataStore;
|
||||
|
||||
const {
|
||||
@ -142,7 +149,9 @@ export default inject(
|
||||
const provider = selection.find((x) => x.providerKey);
|
||||
|
||||
return {
|
||||
expandedKeys: selectedFolderStore.pathParts,
|
||||
expandedKeys: expandedPanelKeys
|
||||
? expandedPanelKeys
|
||||
: selectedFolderStore.pathParts,
|
||||
currentFolderId: selectedFolderStore.id,
|
||||
isRecycleBin: isRecycleBinFolder,
|
||||
filter,
|
||||
@ -156,6 +165,7 @@ export default inject(
|
||||
setDestFolderId,
|
||||
setThirdPartyMoveDialogVisible,
|
||||
itemOperationToFolder,
|
||||
setExpandedPanelKeys,
|
||||
};
|
||||
}
|
||||
)(withRouter(observer(OperationsPanel)));
|
||||
|
@ -8,6 +8,7 @@ class TreeFoldersStore {
|
||||
treeFolders = [];
|
||||
selectedTreeNode = [];
|
||||
expandedKeys = [];
|
||||
expandedPanelKeys = null;
|
||||
|
||||
constructor(selectedFolderStore) {
|
||||
makeAutoObservable(this);
|
||||
@ -34,6 +35,10 @@ class TreeFoldersStore {
|
||||
this.expandedKeys = expandedKeys;
|
||||
};
|
||||
|
||||
setExpandedPanelKeys = (expandedPanelKeys) => {
|
||||
this.expandedPanelKeys = expandedPanelKeys;
|
||||
};
|
||||
|
||||
addExpandedKeys = (item) => {
|
||||
this.expandedKeys.push(item);
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user