From 605bd415bfd9775dcc1c749b8aff5e18a6718359 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Thu, 4 Oct 2018 22:54:12 +0200 Subject: [PATCH] Improve hover in SelectComponent command. Fixes #1448 --- src/commands/view/SelectComponent.js | 11 ++++++++++- src/dom_components/view/ComponentView.js | 17 ----------------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/commands/view/SelectComponent.js b/src/commands/view/SelectComponent.js index 2ad90aaab..8fd24a62f 100644 --- a/src/commands/view/SelectComponent.js +++ b/src/commands/view/SelectComponent.js @@ -65,7 +65,16 @@ module.exports = { onHover(e) { e.stopPropagation(); let trg = e.target; - let model = $(trg).data('model'); + let $el = $(trg); + let model = $el.data('model'); + + if (!model) { + let parent = $el.parent(); + while (!model && parent) { + model = parent.data('model'); + parent = parent.parent(); + } + } // Adjust tools scroll top if (!this.adjScroll) { diff --git a/src/dom_components/view/ComponentView.js b/src/dom_components/view/ComponentView.js index ffdb8ea3c..444383d08 100644 --- a/src/dom_components/view/ComponentView.js +++ b/src/dom_components/view/ComponentView.js @@ -314,23 +314,6 @@ module.exports = Backbone.View.extend({ for (var i = 0, len = childNodes.length; i < len; i++) { container.appendChild(childNodes.shift()); } - - // If the children container is not the same as the component - // (so likely fetched with getChildrenSelector()) is necessary - // to disable pointer-events for all nested components as they - // might prevent the component to be selected - if (container !== this.el) { - var disableNode = el => { - var children = Array.prototype.slice.call(el.children); - children.forEach(el => { - el.style['pointer-events'] = 'none'; - if (container !== el) { - disableNode(el); - } - }); - }; - disableNode(this.el); - } }, renderAttributes() {