diff options
-rwxr-xr-x | css/ninja.css | 4 | ||||
-rw-r--r-- | js/components/ui/FilePicker/pickerNavigator.reel/pickerNavigator.js | 32 | ||||
-rwxr-xr-x | js/controllers/document-controller.js | 32 | ||||
-rwxr-xr-x | js/ninja.reel/ninja.css | 2 | ||||
-rwxr-xr-x | js/stage/stage-view.reel/stage-view.js | 5 | ||||
-rwxr-xr-x | scss/imports/scss/_MainWindow.scss | 2 |
6 files changed, 56 insertions, 21 deletions
diff --git a/css/ninja.css b/css/ninja.css index 0be30434..824a675a 100755 --- a/css/ninja.css +++ b/css/ninja.css | |||
@@ -118,9 +118,9 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co | |||
118 | 118 | ||
119 | #sceneBar { height: 70px; background-color: #474747; } | 119 | #sceneBar { height: 70px; background-color: #474747; } |
120 | 120 | ||
121 | #mainContainer #rulerTop { background: url("../images/temp/ruler-top.png"); height: 15px; margin-bottom: 0px; } | 121 | #mainContainer #rulerTop { background: url("../images/temp/ruler-top.png"); height: 15px; margin-bottom: 0px; display:none;} |
122 | 122 | ||
123 | #rulerLeft { background: url("../images/temp/ruler-left.png"); width: 16px; } | 123 | #rulerLeft { background: url("../images/temp/ruler-left.png"); width: 16px; display:none;} |
124 | 124 | ||
125 | #stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; } | 125 | #stateBar { height: 20px; background-color: #282828; margin-bottom: 0px; } |
126 | 126 | ||
diff --git a/js/components/ui/FilePicker/pickerNavigator.reel/pickerNavigator.js b/js/components/ui/FilePicker/pickerNavigator.reel/pickerNavigator.js index 6b0d92f7..411386f9 100644 --- a/js/components/ui/FilePicker/pickerNavigator.reel/pickerNavigator.js +++ b/js/components/ui/FilePicker/pickerNavigator.reel/pickerNavigator.js | |||
@@ -203,6 +203,13 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, { | |||
203 | this.pickerModel.storeHistory(this.pickerModel.currentRoot);//populate history | 203 | this.pickerModel.storeHistory(this.pickerModel.currentRoot);//populate history |
204 | 204 | ||
205 | this.updateMetadata(this.currentURI); | 205 | this.updateMetadata(this.currentURI); |
206 | |||
207 | //for directory selection, selected url is the folder entered | ||
208 | if(!this.pickerModel.inFileMode ){ | ||
209 | this.okButton.removeAttribute("disabled"); | ||
210 | //put into selectedItems..currently single selection is supported | ||
211 | this.selectedItems = [this.pickerModel.currentRoot]; | ||
212 | } | ||
206 | } | 213 | } |
207 | 214 | ||
208 | this.element.addEventListener("openFolder", function(evt){that.handlePickerNavOpenFolder(evt);}, false);//add icon double click event listener to reload iconList with new set of data | 215 | this.element.addEventListener("openFolder", function(evt){that.handlePickerNavOpenFolder(evt);}, false);//add icon double click event listener to reload iconList with new set of data |
@@ -211,6 +218,7 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, { | |||
211 | this.element.addEventListener("updateMetadata", function(evt){that.handlePickerNavUpdateMetadata(evt);}, false);//show metadata on click of icon | 218 | this.element.addEventListener("updateMetadata", function(evt){that.handlePickerNavUpdateMetadata(evt);}, false);//show metadata on click of icon |
212 | //this.addressGo.addEventListener("click", this, false); | 219 | //this.addressGo.addEventListener("click", this, false); |
213 | this.addressBarUri.addEventListener("keydown", this, false); | 220 | this.addressBarUri.addEventListener("keydown", this, false); |
221 | this.addressBarUri.addEventListener("keyup", this, false); | ||
214 | this.refreshButton.addEventListener("click", this, false);//refresh - gets from file system directly | 222 | this.refreshButton.addEventListener("click", this, false);//refresh - gets from file system directly |
215 | this.backArrow.addEventListener("click", this, false); | 223 | this.backArrow.addEventListener("click", this, false); |
216 | this.forwardArrow.addEventListener("click", this, false); | 224 | this.forwardArrow.addEventListener("click", this, false); |
@@ -608,6 +616,13 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, { | |||
608 | this.backArrow.classList.remove("disable"); | 616 | this.backArrow.classList.remove("disable"); |
609 | } | 617 | } |
610 | 618 | ||
619 | //for directory selection, selected url is the folder entered | ||
620 | if(!this.pickerModel.inFileMode ){ | ||
621 | this.okButton.removeAttribute("disabled"); | ||
622 | //put into selectedItems..currently single selection is supported | ||
623 | this.selectedItems = [evt.folderUri]; | ||
624 | } | ||
625 | |||
611 | } | 626 | } |
612 | }, | 627 | }, |
613 | 628 | ||
@@ -720,6 +735,21 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, { | |||
720 | } | 735 | } |
721 | }, | 736 | }, |
722 | 737 | ||
738 | handleAddressBarUriKeyup:{ | ||
739 | value: function(evt){ | ||
740 | //disable ok if user enters an invalid uri | ||
741 | if(!this.application.ninja.coreIoApi.isValidUri(this.addressBarUri.value)){ | ||
742 | //disable OK | ||
743 | if(!this.okButton.hasAttribute("disabled")){ | ||
744 | this.okButton.setAttribute("disabled", "true"); | ||
745 | } | ||
746 | }else{ | ||
747 | this.okButton.removeAttribute("disabled"); | ||
748 | this.selectedItems = [this.addressBarUri.value]; | ||
749 | } | ||
750 | } | ||
751 | }, | ||
752 | |||
723 | handleRefreshButtonClick:{ | 753 | handleRefreshButtonClick:{ |
724 | value:function(evt){ | 754 | value:function(evt){ |
725 | var uri = this.addressBarUri.value; | 755 | var uri = this.addressBarUri.value; |
@@ -794,7 +824,7 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, { | |||
794 | 824 | ||
795 | handleOkButtonAction : { | 825 | handleOkButtonAction : { |
796 | value: function(evt){ | 826 | value: function(evt){ |
797 | console.log("$$$ File Picker : selected "+ this.selectedItems.toString()); | 827 | //console.log("$$$ File Picker : selected "+ this.selectedItems.toString()); |
798 | var success = true; | 828 | var success = true; |
799 | if(!!this.pickerModel.callback && (this.selectedItems.length > 0)){//call the callback if it is available | 829 | if(!!this.pickerModel.callback && (this.selectedItems.length > 0)){//call the callback if it is available |
800 | try{ | 830 | try{ |
diff --git a/js/controllers/document-controller.js b/js/controllers/document-controller.js index f397ace7..b1a22c1b 100755 --- a/js/controllers/document-controller.js +++ b/js/controllers/document-controller.js | |||
@@ -34,17 +34,17 @@ DocumentController = exports.DocumentController = Montage.create(Component, { | |||
34 | return this._activeDocument; | 34 | return this._activeDocument; |
35 | }, | 35 | }, |
36 | set: function(doc) { | 36 | set: function(doc) { |
37 | if(this._activeDocument) this._activeDocument.isActive = false; | 37 | if(!!this._activeDocument) this._activeDocument.isActive = false; |
38 | |||
39 | if(this._documents.indexOf(doc) === -1) this._documents.push(doc); | ||
40 | 38 | ||
41 | this._activeDocument = doc; | 39 | this._activeDocument = doc; |
42 | this._activeDocument.isActive = true; | 40 | if(!!this._activeDocument){ |
43 | 41 | ||
44 | if(!!this._activeDocument.editor){ | 42 | if(this._documents.indexOf(doc) === -1) this._documents.push(doc); |
45 | this._activeDocument.editor.focus(); | 43 | this._activeDocument.isActive = true; |
44 | if(!!this._activeDocument.editor){ | ||
45 | this._activeDocument.editor.focus(); | ||
46 | } | ||
46 | } | 47 | } |
47 | |||
48 | } | 48 | } |
49 | }, | 49 | }, |
50 | 50 | ||
@@ -184,7 +184,7 @@ DocumentController = exports.DocumentController = Montage.create(Component, { | |||
184 | switch (doc.extension) { | 184 | switch (doc.extension) { |
185 | case 'html': case 'html': | 185 | case 'html': case 'html': |
186 | //Open in designer view | 186 | //Open in designer view |
187 | Montage.create(HTMLDocument).initialize(doc, Uuid.generate(), this._createIframeElement(), this._onOpenDocument); | 187 | Montage.create(HTMLDocument).initialize(doc, Uuid.generate(), this._createIframeElement(), this._onOpenDocument.bind(this)); |
188 | break; | 188 | break; |
189 | default: | 189 | default: |
190 | //Open in code view | 190 | //Open in code view |
@@ -250,7 +250,6 @@ DocumentController = exports.DocumentController = Montage.create(Component, { | |||
250 | } | 250 | } |
251 | 251 | ||
252 | var doc = this._findDocumentByUUID(id); | 252 | var doc = this._findDocumentByUUID(id); |
253 | this._removeDocumentView(doc.container); | ||
254 | 253 | ||
255 | var closeDocumentIndex = this._findIndexByUUID(id); | 254 | var closeDocumentIndex = this._findIndexByUUID(id); |
256 | this._documents.splice(this._findIndexByUUID(id), 1); | 255 | this._documents.splice(this._findIndexByUUID(id), 1); |
@@ -263,8 +262,11 @@ DocumentController = exports.DocumentController = Montage.create(Component, { | |||
263 | nextDocumentIndex = closeDocumentIndex - 1; | 262 | nextDocumentIndex = closeDocumentIndex - 1; |
264 | } | 263 | } |
265 | this.application.ninja.stage.stageView.switchDocument(this._documents[nextDocumentIndex]); | 264 | this.application.ninja.stage.stageView.switchDocument(this._documents[nextDocumentIndex]); |
265 | this._removeDocumentView(doc.container); | ||
266 | }else if(this._documents.length === 0){ | 266 | }else if(this._documents.length === 0){ |
267 | //if there are no documents to switch to then just show the iframeContainer | 267 | this.activeDocument = null; |
268 | this._removeDocumentView(doc.container); | ||
269 | this.application.ninja.stage.stageView.hideRulers(); | ||
268 | document.getElementById("iframeContainer").style.display="block"; | 270 | document.getElementById("iframeContainer").style.display="block"; |
269 | } | 271 | } |
270 | } | 272 | } |
@@ -275,11 +277,15 @@ DocumentController = exports.DocumentController = Montage.create(Component, { | |||
275 | _onOpenDocument: { | 277 | _onOpenDocument: { |
276 | value: function(doc){ | 278 | value: function(doc){ |
277 | //var data = DocumentManager.activeDocument; | 279 | //var data = DocumentManager.activeDocument; |
278 | //DocumentManager._hideCurrentDocument(); | ||
279 | 280 | ||
280 | //stageManagerModule.stageManager.toggleCanvas(); | 281 | this._hideCurrentDocument(); |
282 | this.application.ninja.stage.stageView.hideOtherDocuments(doc.uuid); | ||
283 | |||
284 | this.application.ninja.stage.hideCanvas(false); | ||
285 | |||
286 | this.activeDocument = doc; | ||
281 | 287 | ||
282 | DocumentController.activeDocument = doc; | 288 | this._showCurrentDocument(); |
283 | 289 | ||
284 | NJevent("onOpenDocument", doc); | 290 | NJevent("onOpenDocument", doc); |
285 | // appDelegateModule.MyAppDelegate.onSetActiveDocument(); | 291 | // appDelegateModule.MyAppDelegate.onSetActiveDocument(); |
diff --git a/js/ninja.reel/ninja.css b/js/ninja.reel/ninja.css index 99fa9a4f..83c0e569 100755 --- a/js/ninja.reel/ninja.css +++ b/js/ninja.reel/ninja.css | |||
@@ -7,5 +7,3 @@ | |||
7 | .main { | 7 | .main { |
8 | padding: 100px; | 8 | padding: 100px; |
9 | } | 9 | } |
10 | |||
11 | |||
diff --git a/js/stage/stage-view.reel/stage-view.js b/js/stage/stage-view.reel/stage-view.js index 31ace49c..cd19f361 100755 --- a/js/stage/stage-view.reel/stage-view.js +++ b/js/stage/stage-view.reel/stage-view.js | |||
@@ -123,7 +123,7 @@ exports.StageView = Montage.create(Component, { | |||
123 | switchDocument:{ | 123 | switchDocument:{ |
124 | value: function(doc){ | 124 | value: function(doc){ |
125 | //save editor cursor position | 125 | //save editor cursor position |
126 | if(!!this.application.ninja.documentController.activeDocument.editor){ | 126 | if(!!this.application.ninja.documentController.activeDocument && !!this.application.ninja.documentController.activeDocument.editor){ |
127 | this.application.ninja.documentController.activeDocument.hline = this.application.ninja.documentController.activeDocument.editor.getCursor(true); | 127 | this.application.ninja.documentController.activeDocument.hline = this.application.ninja.documentController.activeDocument.editor.getCursor(true); |