diff --git a/src/canvas/model/Canvas.js b/src/canvas/model/Canvas.js index 5a5d10fb8..771fb038c 100644 --- a/src/canvas/model/Canvas.js +++ b/src/canvas/model/Canvas.js @@ -33,6 +33,9 @@ export default Backbone.Model.extend({ }, _pageUpdated(page, prev) { + const { em } = this; + em.setSelected(); + em.stopDefault(); // We have to stop before changing current frames prev && prev.getFrames().map(frame => frame.disable()); this.set('frames', page.getFrames()); }, diff --git a/src/canvas/view/CanvasView.js b/src/canvas/view/CanvasView.js index 11fdb68ca..487ba23e8 100644 --- a/src/canvas/view/CanvasView.js +++ b/src/canvas/view/CanvasView.js @@ -42,10 +42,19 @@ export default Backbone.View.extend({ this.listenTo(em, 'component:selected', this.checkSelected); this.listenTo(model, 'change:zoom change:x change:y', this.updateFrames); this.listenTo(model, 'change:frames', this._onFramesUpdate); - this.listenTo(frames, 'loaded:all', () => em.trigger('loaded')); + this.listenTo(frames, 'loaded:all', this._framesLoaded); this.toggleListeners(1); }, + _framesLoaded() { + this.em.trigger('loaded'); + }, + + _onFramesUpdate() { + this._initFrames(); + this._renderFrames(); + }, + _initFrames() { const { frames, model, config } = this; frames && frames.remove(); @@ -335,11 +344,6 @@ export default Backbone.View.extend({ return (view && view._getFrame()) || this.em.get('currentFrame'); }, - _onFramesUpdate() { - this._initFrames(); - this._renderFrames(); - }, - _renderFrames() { const { model, frames, em, framesArea } = this; const frms = model.get('frames'); diff --git a/src/dom_components/view/ComponentView.js b/src/dom_components/view/ComponentView.js index f7afb09ff..250e6b75a 100644 --- a/src/dom_components/view/ComponentView.js +++ b/src/dom_components/view/ComponentView.js @@ -112,6 +112,7 @@ export default Backbone.View.extend({ delete view.childrenView; delete view.scriptContainer; delete view.opts; + delete model.view; // delete view.el; return view; }, diff --git a/src/editor/view/EditorView.js b/src/editor/view/EditorView.js index 5e0e79db3..987564b5c 100644 --- a/src/editor/view/EditorView.js +++ b/src/editor/view/EditorView.js @@ -14,7 +14,6 @@ export default Backbone.View.extend({ this.pn.active(); this.pn.disableButtons(); setTimeout(() => { - model.runDefault(); model.trigger('load', model.get('Editor')); }); });