@@ -36,8 +36,8 @@ qx.Class.define("osparc.file.FolderViewer", {
3636 if ( allowMultiselection ) {
3737 multiSelectButton = this . getChildControl ( "multi-select-button" ) ;
3838 }
39- const iconsButton = this . getChildControl ( "view-options-icons" ) ;
40- const listButton = this . getChildControl ( "view-options-list" ) ;
39+ const gridViewButton = this . getChildControl ( "view-options-icons" ) ;
40+ const listViewButton = this . getChildControl ( "view-options-list" ) ;
4141 const folderContent = this . getChildControl ( "folder-content" ) ;
4242 const selectedFileLayout = this . getChildControl ( "selected-file-layout" ) ;
4343
@@ -54,19 +54,27 @@ qx.Class.define("osparc.file.FolderViewer", {
5454 if ( allowMultiselection ) {
5555 multiSelectButton . addListener ( "changeValue" , e => folderContent . setMultiSelect ( e . getData ( ) ) ) ;
5656 }
57- iconsButton . addListener ( "execute" , ( ) => folderContent . setMode ( "icons" ) ) ;
58- listButton . addListener ( "execute" , ( ) => folderContent . setMode ( "list" ) ) ;
57+ gridViewButton . addListener ( "execute" , ( ) => {
58+ folderContent . setMode ( "icons" ) ;
59+ selectedFileLayout . resetItemSelected ( ) ;
60+ } ) ;
61+ listViewButton . addListener ( "execute" , ( ) => {
62+ folderContent . setMode ( "list" ) ;
63+ selectedFileLayout . resetItemSelected ( ) ;
64+ } ) ;
5965
60- folderContent . addListener ( "itemSelected" , e => this . fireDataEvent ( "itemSelected" , e . getData ( ) ) ) ;
6166 folderContent . addListener ( "requestDatasetFiles" , e => this . fireDataEvent ( "requestDatasetFiles" , e . getData ( ) ) ) ;
6267 folderContent . addListener ( "selectionChanged" , e => {
6368 const selectionData = e . getData ( ) ;
64- if ( selectionData ) {
65- selectedFileLayout . setItemSelected ( selectionData ) ;
66- } else {
67- selectedFileLayout . resetItemSelected ( selectionData ) ;
68- }
69+ selectionData ? selectedFileLayout . setItemSelected ( selectionData ) : selectedFileLayout . resetItemSelected ( ) ;
6970 } , this ) ;
71+ folderContent . addListener ( "itemSelected" , e => {
72+ const entry = e . getData ( ) ;
73+ this . fireDataEvent ( "itemSelected" , entry ) ;
74+ if ( osparc . file . FilesTree . isDir ( entry ) ) {
75+ this . setFolder ( entry ) ;
76+ }
77+ } ) ;
7078 } ,
7179
7280 properties : {
0 commit comments