WEb: Files: Added folder tree reset.

This commit is contained in:
Tatiana Lopaeva 2021-08-19 19:08:58 +03:00
parent 36987fb1f3
commit bbbdc79a21
3 changed files with 55 additions and 5 deletions

View File

@ -99,8 +99,23 @@ class SelectFileDialogBody extends React.Component {
this.setFilter(); this.setFilter();
} }
componentWillUnmount() { componentWillUnmount() {
const {
resetTreeFolders,
setExpandedPanelKeys,
setDefaultSelectedFolder,
setFolderId,
setFile,
} = this.props;
this.throttledResize && this.throttledResize.cancel(); this.throttledResize && this.throttledResize.cancel();
window.removeEventListener("resize", this.throttledResize); window.removeEventListener("resize", this.throttledResize);
if (resetTreeFolders) {
setExpandedPanelKeys(null);
setDefaultSelectedFolder();
setFolderId(null);
setFile(null);
}
} }
getDisplayType = () => { getDisplayType = () => {
@ -333,9 +348,13 @@ const SelectFileDialogWrapper = inject(
setFolderId, setFolderId,
setFile, setFile,
} = selectedFilesStore; } = selectedFilesStore;
const { setSelectedNode } = treeFoldersStore;
const { setSelectedNode, setExpandedPanelKeys } = treeFoldersStore;
const { filter } = filesStore; const { filter } = filesStore;
const { setSelectedFolder } = selectedFolderStore; const {
setSelectedFolder,
toDefault: setDefaultSelectedFolder,
} = selectedFolderStore;
return { return {
storeFolderId, storeFolderId,
fileInfo, fileInfo,
@ -344,6 +363,8 @@ const SelectFileDialogWrapper = inject(
setSelectedFolder, setSelectedFolder,
setSelectedNode, setSelectedNode,
filter, filter,
setDefaultSelectedFolder,
setExpandedPanelKeys,
}; };
} }
)( )(

View File

@ -315,10 +315,23 @@ class SelectFolderModalDialog extends React.Component {
}; };
componentWillUnmount() { componentWillUnmount() {
const {
setExpandedPanelKeys,
setDefaultSelectedFolder,
resetTreeFolders,
dialogWithFiles,
} = this.props;
if (this.throttledResize) { if (this.throttledResize) {
this.throttledResize && this.throttledResize.cancel(); this.throttledResize && this.throttledResize.cancel();
window.removeEventListener("resize", this.throttledResize); window.removeEventListener("resize", this.throttledResize);
} }
if (resetTreeFolders && !dialogWithFiles) {
setExpandedPanelKeys(null);
setDefaultSelectedFolder();
}
} }
getDisplayType = () => { getDisplayType = () => {
const displayType = const displayType =
@ -508,15 +521,29 @@ SelectFolderModalDialog.defaultProps = {
}; };
const SelectFolderDialogWrapper = inject( const SelectFolderDialogWrapper = inject(
({ treeFoldersStore, selectedFolderStore, filesStore }) => { ({
const { setSelectedNode } = treeFoldersStore; treeFoldersStore,
selectedFolderStore,
selectedFilesStore,
filesStore,
}) => {
const { setSelectedNode, setExpandedPanelKeys } = treeFoldersStore;
const { canCreate } = filesStore; const { canCreate } = filesStore;
const { setSelectedFolder, id } = selectedFolderStore; const {
setSelectedFolder,
id,
toDefault: setDefaultSelectedFolder,
} = selectedFolderStore;
const { setFolderId, setFile } = selectedFilesStore;
return { return {
setSelectedFolder, setSelectedFolder,
setSelectedNode, setSelectedNode,
canCreate, canCreate,
storeFolderId: id, storeFolderId: id,
setExpandedPanelKeys,
setDefaultSelectedFolder,
setFolderId,
setFile,
}; };
} }
)( )(

View File

@ -682,6 +682,7 @@ const Editor = () => {
{isFileDialogVisible && ( {isFileDialogVisible && (
<SelectFileDialog <SelectFileDialog
resetTreeFolders
onSelectFile={onSelectFile} onSelectFile={onSelectFile}
isPanelVisible={isFileDialogVisible} isPanelVisible={isFileDialogVisible}
onClose={onCloseFileDialog} onClose={onCloseFileDialog}
@ -696,6 +697,7 @@ const Editor = () => {
{isFolderDialogVisible && ( {isFolderDialogVisible && (
<SelectFolderDialog <SelectFolderDialog
resetTreeFolders
showButtons showButtons
isPanelVisible={isFolderDialogVisible} isPanelVisible={isFolderDialogVisible}
isSetFolderImmediately isSetFolderImmediately