diff options
Diffstat (limited to 'js')
-rwxr-xr-x | js/components/layout/bread-crumb.reel/bread-crumb.js | 2 | ||||
-rwxr-xr-x | js/controllers/document-controller.js | 18 | ||||
-rwxr-xr-x | js/controllers/selection-controller.js | 5 | ||||
-rwxr-xr-x | js/controllers/styles-controller.js | 2 | ||||
-rwxr-xr-x | js/document/document-html.js | 2 | ||||
-rwxr-xr-x | js/document/views/design.js | 29 | ||||
-rwxr-xr-x | js/helper-classes/3D/draw-utils.js | 19 | ||||
-rwxr-xr-x | js/helper-classes/3D/snap-manager.js | 7 | ||||
-rwxr-xr-x | js/helper-classes/3D/view-utils.js | 13 | ||||
-rwxr-xr-x | js/mediators/keyboard-mediator.js | 4 | ||||
-rwxr-xr-x | js/panels/Splitter.js | 7 | ||||
-rw-r--r-- | js/panels/Timeline/Layer.reel/Layer.js | 6 | ||||
-rw-r--r-- | js/panels/Timeline/TimelinePanel.reel/TimelinePanel.js | 11 | ||||
-rw-r--r-- | js/panels/Timeline/TimelineTrack.reel/TimelineTrack.js | 6 | ||||
-rwxr-xr-x | js/stage/layout.js | 6 | ||||
-rwxr-xr-x | js/stage/stage-deps.js | 46 | ||||
-rwxr-xr-x | js/stage/stage.reel/stage.js | 95 |
17 files changed, 126 insertions, 152 deletions
diff --git a/js/components/layout/bread-crumb.reel/bread-crumb.js b/js/components/layout/bread-crumb.reel/bread-crumb.js index 2db775eb..49dbe3cb 100755 --- a/js/components/layout/bread-crumb.reel/bread-crumb.js +++ b/js/components/layout/bread-crumb.reel/bread-crumb.js | |||
@@ -21,7 +21,7 @@ exports.Breadcrumb = Montage.create(Component, { | |||
21 | 21 | ||
22 | handleCloseDocument: { | 22 | handleCloseDocument: { |
23 | value: function(){ | 23 | value: function(){ |
24 | if(!this.application.ninja.documentController.activeDocument) { | 24 | if(!this.application.ninja.documentController.activeDocument && this.application.ninja.currentDocument.currentView !== "code") { |
25 | this.disabled = true; | 25 | this.disabled = true; |
26 | this.application.ninja.currentSelectedContainer = (this.application.ninja.currentDocument ? this.application.ninja.currentDocument.model.documentRoot : null); | 26 | this.application.ninja.currentSelectedContainer = (this.application.ninja.currentDocument ? this.application.ninja.currentDocument.model.documentRoot : null); |
27 | } | 27 | } |
diff --git a/js/controllers/document-controller.js b/js/controllers/document-controller.js index eecf9146..2c34eedf 100755 --- a/js/controllers/document-controller.js +++ b/js/controllers/document-controller.js | |||
@@ -377,10 +377,10 @@ exports.DocumentController = Montage.create(Component, { | |||
377 | 377 | ||
378 | if(this._documents.length > 0) { | 378 | if(this._documents.length > 0) { |
379 | previousFocusedDocument = this._documents[this._documents.length - 1]; | 379 | previousFocusedDocument = this._documents[this._documents.length - 1]; |
380 | this._activeDocument = previousFocusedDocument; | 380 | this.activeDocument = previousFocusedDocument; |
381 | this.switchDocuments(this.activeDocument, previousFocusedDocument, true); | 381 | this.switchDocuments(this.activeDocument, previousFocusedDocument, false); |
382 | } else { | 382 | } else { |
383 | this._activeDocument = null; | 383 | this.activeDocument = null; |
384 | this.application.ninja.stage.hideRulers(); | 384 | this.application.ninja.stage.hideRulers(); |
385 | 385 | ||
386 | this.application.ninja.stage.hideCanvas(true); | 386 | this.application.ninja.stage.hideCanvas(true); |
@@ -502,14 +502,16 @@ exports.DocumentController = Montage.create(Component, { | |||
502 | this.application.ninja.stage.restoreAllPanels(); | 502 | this.application.ninja.stage.restoreAllPanels(); |
503 | this.application.ninja.stage.hideCanvas(false); | 503 | this.application.ninja.stage.hideCanvas(false); |
504 | this.application.ninja.stage.showRulers(); | 504 | this.application.ninja.stage.showRulers(); |
505 | } else if(currentDocument.currentView === "design" && newDocument.currentView === "code") { | ||
506 | this.application.ninja.stage.showCodeViewBar(true); | ||
507 | this.application.ninja.stage.collapseAllPanels(); | ||
508 | this.application.ninja.stage.hideCanvas(true); | ||
509 | this.application.ninja.stage.hideRulers(); | ||
510 | } | 505 | } |
511 | } | 506 | } |
512 | 507 | ||
508 | if(newDocument.currentView === "code") { | ||
509 | this.application.ninja.stage.showCodeViewBar(true); | ||
510 | this.application.ninja.stage.collapseAllPanels(); | ||
511 | this.application.ninja.stage.hideCanvas(true); | ||
512 | this.application.ninja.stage.hideRulers(); | ||
513 | } | ||
514 | |||
513 | this.application.ninja.stage.clearAllCanvas(); | 515 | this.application.ninja.stage.clearAllCanvas(); |
514 | 516 | ||
515 | if(didCreate) { | 517 | if(didCreate) { |
diff --git a/js/controllers/selection-controller.js b/js/controllers/selection-controller.js index 7bef0db8..75bffc5c 100755 --- a/js/controllers/selection-controller.js +++ b/js/controllers/selection-controller.js | |||
@@ -67,10 +67,9 @@ exports.SelectionController = Montage.create(Component, { | |||
67 | this._isDocument = true; | 67 | this._isDocument = true; |
68 | 68 | ||
69 | if(currentSelectionArray) { | 69 | if(currentSelectionArray) { |
70 | if(currentSelectionArray.length >= 1) { | 70 | this.application.ninja.selectedElements = currentSelectionArray; |
71 | if(currentSelectionArray.length) { | ||
71 | this._isDocument = false; | 72 | this._isDocument = false; |
72 | |||
73 | this.application.ninja.selectedElements = currentSelectionArray; | ||
74 | NJevent("selectionChange", {"elements": this.application.ninja.selectedElements, "isDocument": this._isDocument}); | 73 | NJevent("selectionChange", {"elements": this.application.ninja.selectedElements, "isDocument": this._isDocument}); |
75 | } | 74 | } |
76 | } | 75 | } |
diff --git a/js/controllers/styles-controller.js b/js/controllers/styles-controller.js index 04e87ba7..534f77c7 100755 --- a/js/controllers/styles-controller.js +++ b/js/controllers/styles-controller.js | |||
@@ -81,7 +81,7 @@ var stylesController = exports.StylesController = Montage.create(Component, { | |||
81 | set : function(document) { | 81 | set : function(document) { |
82 | ///// If the document is null set default stylesheets to null | 82 | ///// If the document is null set default stylesheets to null |
83 | 83 | ||
84 | if(!document) { | 84 | if(!document || document.currentView === "code") { |
85 | this._activeDocument = null; | 85 | this._activeDocument = null; |
86 | this._stageStylesheet = null; | 86 | this._stageStylesheet = null; |
87 | this.defaultStylesheet = null; | 87 | this.defaultStylesheet = null; |
diff --git a/js/document/document-html.js b/js/document/document-html.js index 2375632c..157d7a0e 100755 --- a/js/document/document-html.js +++ b/js/document/document-html.js | |||
@@ -84,7 +84,7 @@ exports.HtmlDocument = Montage.create(Component, { | |||
84 | //Rendering design view, using observers to know when template is ready | 84 | //Rendering design view, using observers to know when template is ready |
85 | this.model.views.design.render(function () { | 85 | this.model.views.design.render(function () { |
86 | //TODO: Why is this needed? | 86 | //TODO: Why is this needed? |
87 | this._liveNodeList = this.model.documentRoot.getElementsByTagName('*'); | 87 | this.model.views.design._liveNodeList = this.documentRoot.getElementsByTagName('*'); |
88 | //Adding observer to know when template is ready | 88 | //Adding observer to know when template is ready |
89 | this._observer = new WebKitMutationObserver(this.handleTemplateReady.bind(this)); | 89 | this._observer = new WebKitMutationObserver(this.handleTemplateReady.bind(this)); |
90 | this._observer.observe(this.model.views.design.document.head, {childList: true}); | 90 | this._observer.observe(this.model.views.design.document.head, {childList: true}); |
diff --git a/js/document/views/design.js b/js/document/views/design.js index d1c75c01..06708957 100755 --- a/js/document/views/design.js +++ b/js/document/views/design.js | |||
@@ -67,8 +67,34 @@ exports.DesignDocumentView = Montage.create(BaseDocumentView, { | |||
67 | propertiesPanel: { | 67 | propertiesPanel: { |
68 | value: null | 68 | value: null |
69 | }, | 69 | }, |
70 | |||
70 | //////////////////////////////////////////////////////////////////// | 71 | //////////////////////////////////////////////////////////////////// |
71 | // | 72 | // |
73 | _liveNodeList: { | ||
74 | value: null | ||
75 | }, | ||
76 | |||
77 | getLiveNodeList: { | ||
78 | value: function(useFilter) { | ||
79 | if(useFilter) { | ||
80 | var filteredNodes = [], | ||
81 | childNodes = Array.prototype.slice.call(this._liveNodeList, 0); | ||
82 | |||
83 | childNodes.forEach(function(item) { | ||
84 | if( (item.nodeType === 1) && (item.nodeName !== "STYLE") && (item.nodeName !== "SCRIPT")) { | ||
85 | filteredNodes.push(item); | ||
86 | } | ||
87 | }); | ||
88 | return filteredNodes; | ||
89 | } else { | ||
90 | return Array.prototype.slice.call(this._liveNodeList, 0); | ||
91 | } | ||
92 | } | ||
93 | }, | ||
94 | //////////////////////////////////////////////////////////////////// | ||
95 | // | ||
96 | |||
97 | // | ||
72 | initialize: { | 98 | initialize: { |
73 | value: function (parent) { | 99 | value: function (parent) { |
74 | //Creating iFrame for view | 100 | //Creating iFrame for view |
@@ -190,9 +216,6 @@ exports.DesignDocumentView = Montage.create(BaseDocumentView, { | |||
190 | this._bodyFragment = null; | 216 | this._bodyFragment = null; |
191 | //Calling standard method to finish opening document | 217 | //Calling standard method to finish opening document |
192 | this.bodyContentLoaded(null); | 218 | this.bodyContentLoaded(null); |
193 | //TODO: Move this to be set via the controller | ||
194 | this.application.ninja.stage.documentOffsetLeft = parseInt((this.document.body.scrollWidth - this._template.size.width)/2); | ||
195 | this.application.ninja.stage.documentOffsetTop = parseInt((this.document.body.scrollHeight - this._template.size.height)/2); | ||
196 | } | 219 | } |
197 | }, | 220 | }, |
198 | //////////////////////////////////////////////////////////////////// | 221 | //////////////////////////////////////////////////////////////////// |
diff --git a/js/helper-classes/3D/draw-utils.js b/js/helper-classes/3D/draw-utils.js index 9de85216..871b832d 100755 --- a/js/helper-classes/3D/draw-utils.js +++ b/js/helper-classes/3D/draw-utils.js | |||
@@ -119,7 +119,10 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { | |||
119 | 119 | ||
120 | initializeFromDocument:{ | 120 | initializeFromDocument:{ |
121 | value:function(){ | 121 | value:function(){ |
122 | var documentRootChildren = null, i, stage = this.application.ninja.stage; | 122 | var i, |
123 | documentRootChildren = this.application.ninja.currentDocument.model.views.design.getLiveNodeList(true), | ||
124 | stage = this.application.ninja.stage, | ||
125 | len = documentRootChildren.length; | ||
123 | //initialize with current document | 126 | //initialize with current document |
124 | this._eltArray = []; | 127 | this._eltArray = []; |
125 | this._planesArray = []; | 128 | this._planesArray = []; |
@@ -128,11 +131,11 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { | |||
128 | this.setWorkingPlane( [0,0,1,0] ); | 131 | this.setWorkingPlane( [0,0,1,0] ); |
129 | 132 | ||
130 | //Loop through all the top-level children of the current document and call drawUtils.addElement on them | 133 | //Loop through all the top-level children of the current document and call drawUtils.addElement on them |
131 | if(this.application.ninja.currentDocument._liveNodeList.length > 0){ | 134 | if(len > 0) { |
132 | documentRootChildren = this.application.ninja.currentDocument._liveNodeList; | 135 | var initL = 0, |
133 | var len = documentRootChildren.length, | 136 | initT = 0, |
134 | minLeft = stage.userPaddingLeft, | 137 | minLeft = 0, |
135 | minTop = stage.userPaddingTop, | 138 | minTop = 0, |
136 | docLeft = stage.documentOffsetLeft, | 139 | docLeft = stage.documentOffsetLeft, |
137 | docTop = stage.documentOffsetTop, | 140 | docTop = stage.documentOffsetTop, |
138 | l, | 141 | l, |
@@ -151,10 +154,10 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { | |||