Merge master -> master_vca_intg
[osm/UI.git] / skyquake / plugins / composer / src / src / stores / ComposerAppStore.js
index 347ba9a..b30193a 100644 (file)
@@ -122,7 +122,7 @@ class ComposerAppStore {
                this.fullScreenMode = false;
                this.panelTabShown = 'descriptor';
                //File manager values
-               this.files = [];
+               this.files = false;
                this.filesState = {};
                this.downloadJobs = {};
                //End File  manager values
@@ -341,13 +341,21 @@ class ComposerAppStore {
                this.setState({showJSONViewer: false});
        }
 
-       toggleCanvasPanelTray() {
+       toggleCanvasPanelTray(event) {
                const layout = this.layout;
-               if (layout.bottom > 25) {
+               const attrMap = event.target.attributes;
+               let panelEvent = null;
+               for(let k in attrMap) {
+                       if(attrMap[k].name == 'data-event') {
+                               panelEvent = attrMap[k].nodeValue;
+                       }
+               }
+               if ((layout.bottom > 25) && ((panelEvent == this.displayedPanel) || panelEvent == 'arrow')) {
                        this.closeCanvasPanelTray();
                } else {
                        this.openCanvasPanelTray();
                }
+               this.setState({displayedPanel: panelEvent})
        }
 
        openCanvasPanelTray() {
@@ -549,7 +557,7 @@ class ComposerAppStore {
                let self = this;
                let ws = window.multiplexer.channel(id);
                let downloadJobs = _.cloneDeep(self.downloadJobs);
-               let newFiles = {};
+               let newFiles = false;
                ws.onmessage = (socket) => {
             if (self.files && self.files.length > 0) {
                 let jobs = [];
@@ -625,7 +633,6 @@ class ComposerAppStore {
        openFileManagerSockets(i) {
                let self = this;
                let item = i || self.item;
-               this.files = {data:[]};
         // this.closeFileManagerSockets();
                this.getInstance().openFileMonitoringSocket(item.id, item.uiState.type).then(function() {
         //     // self.getInstance().openDownloadMonitoringSocket(item.id);