From cdbdb720078aac82aa49764ee8a8b15faada7917 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Wed, 12 Feb 2020 03:13:53 +0100 Subject: [PATCH] Fix drag issues on esc key --- src/commands/index.js | 6 +++--- src/utils/Sorter.js | 19 +++++++++++-------- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/commands/index.js b/src/commands/index.js index dedae275f..06f4bdb99 100644 --- a/src/commands/index.js +++ b/src/commands/index.js @@ -154,10 +154,10 @@ export default () => { em.trigger(`${eventDrag}:end`, data); }; - if (includes(modes, mode)) { - // Dirty patch to prevent parent selection on drop - em.set('_cmpDrag', 1); + // Dirty patch to prevent parent selection on drop + em.set('_cmpDrag', 1); + if (includes(modes, mode)) { // TODO move grabbing func in editor/canvas from the Sorter dragger = ed.runCommand('core:component-drag', { guidesInfo: 1, diff --git a/src/utils/Sorter.js b/src/utils/Sorter.js index b57c2adec..604cb381b 100644 --- a/src/utils/Sorter.js +++ b/src/utils/Sorter.js @@ -1055,14 +1055,17 @@ export default Backbone.View.extend({ this.toggleSortCursor(); this.toMove = null; - isFunction(onEndMove) && - moved.forEach(m => - onEndMove(m, this, { - target: srcModel, - parent: srcModel && srcModel.parent(), - index: srcModel && srcModel.index() - }) - ); + + if (isFunction(onEndMove)) { + const data = { + target: srcModel, + parent: srcModel && srcModel.parent(), + index: srcModel && srcModel.index() + }; + moved.length + ? moved.forEach(m => onEndMove(m, this, data)) + : onEndMove(null, this, { ...data, cancelled: 1 }); + } }, /**