Skip to content

Commit 306fe84

Browse files
authored
🐛 [Frontend] Fixes: Data Browsing (#7672)
1 parent d2a092c commit 306fe84

File tree

2 files changed

+27
-105
lines changed

2 files changed

+27
-105
lines changed

services/static-webserver/client/source/class/osparc/dashboard/FoldersTree.js

Lines changed: 0 additions & 88 deletions
This file was deleted.

services/static-webserver/client/source/class/osparc/file/TreeFolderView.js

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -95,43 +95,53 @@ qx.Class.define("osparc.file.TreeFolderView", {
9595
return control || this.base(arguments, id);
9696
},
9797

98+
__openPath: function(selectedModel) {
99+
const folderTree = this.getChildControl("folder-tree");
100+
if (selectedModel.getPath() && !selectedModel.getLoaded()) {
101+
selectedModel.setLoaded(true);
102+
folderTree.requestPathItems(selectedModel.getLocation(), selectedModel.getPath())
103+
.then(() => {
104+
folderTree.openNodeAndParents(selectedModel);
105+
folderTree.setSelection(new qx.data.Array([selectedModel]));
106+
})
107+
.catch(err => {
108+
console.error(err);
109+
selectedModel.setLoaded(false);
110+
});
111+
} else {
112+
folderTree.openNodeAndParents(selectedModel);
113+
folderTree.setSelection(new qx.data.Array([selectedModel]));
114+
}
115+
116+
const folderViewer = this.getChildControl("folder-viewer");
117+
if (osparc.file.FilesTree.isDir(selectedModel)) {
118+
folderViewer.setFolder(selectedModel);
119+
}
120+
},
121+
98122
__buildLayout: function() {
99123
const folderTree = this.getChildControl("folder-tree");
100124
const folderViewer = this.getChildControl("folder-viewer");
101125

102126
folderTree.addListener("selectionChanged", () => {
103127
const selectedModel = folderTree.getSelectedItem();
104128
if (selectedModel) {
105-
if (osparc.file.FilesTree.isDir(selectedModel)) {
106-
folderViewer.setFolder(selectedModel);
107-
}
108-
if (selectedModel.getPath() && !selectedModel.getLoaded()) {
109-
selectedModel.setLoaded(true);
110-
folderTree.requestPathItems(selectedModel.getLocation(), selectedModel.getPath());
111-
}
129+
this.__openPath(selectedModel);
112130
}
113131
}, this);
114132

115133
folderViewer.addListener("openItemSelected", e => {
116134
const selectedModel = e.getData();
117135
if (selectedModel) {
118-
if (osparc.file.FilesTree.isDir(selectedModel)) {
119-
folderViewer.setFolder(selectedModel);
120-
}
121-
// this will trigger the fetching of the content
122-
folderTree.openNodeAndParents(selectedModel);
123-
folderTree.setSelection(new qx.data.Array([selectedModel]));
136+
this.__openPath(selectedModel);
124137
}
125138
}, this);
126139

127140
folderViewer.addListener("folderUp", e => {
128141
const currentFolder = e.getData();
129142
const parent = folderTree.getParent(currentFolder);
130143
if (parent) {
131-
folderTree.setSelection(new qx.data.Array([parent]));
132-
if (osparc.file.FilesTree.isDir(parent)) {
133-
folderViewer.setFolder(parent);
134-
}
144+
this.__openPath(parent);
135145
}
136146
}, this);
137147
},

0 commit comments

Comments
 (0)