Browse Source

Fix empty text component on drag. Closes #2452

pull/2475/head
Artur Arseniev 6 years ago
parent
commit
e6a56a33a8
  1. 1
      src/commands/index.js
  2. 4
      src/dom_components/view/ComponentTextView.js
  3. 6
      src/dom_components/view/ComponentView.js

1
src/commands/index.js

@ -129,6 +129,7 @@ export default () => {
const defComOptions = { preserveSelected: 1 };
const modes = ['absolute', 'translate'];
const hideTlb = () => em.stopDefault(defComOptions);
selAll.forEach(sel => sel.trigger('disable'));
// Dirty patch to prevent parent selection on drop (in absolute mode)
em.set('_cmpDrag', 1);

4
src/dom_components/view/ComponentTextView.js

@ -48,6 +48,10 @@ export default ComponentView.extend({
this.toggleEvents(1);
},
onDisable() {
this.disableEditing();
},
/**
* Disable element content editing
* @private

6
src/dom_components/view/ComponentView.js

@ -38,6 +38,7 @@ export default Backbone.View.extend({
this.listenTo(model, 'change:content', this.updateContent);
this.listenTo(model, 'change', this.handleChange);
this.listenTo(model, 'active', this.onActive);
this.listenTo(model, 'disable', this.onDisable);
$el.data('model', model);
model.view = this;
this.initClasses();
@ -74,6 +75,11 @@ export default Backbone.View.extend({
*/
onActive() {},
/**
* Callback executed when the `disable` event is triggered on component
*/
onDisable() {},
remove() {
Backbone.View.prototype.remove.apply(this, arguments);
this.removed(this._clbObj());

Loading…
Cancel
Save