[FIX] web_editor: disable overlay pointer events on wheel event

This commit disable the pointer events on the overlay during the mouse
wheel event. To prevent page scrolling from stopping when hovering
over the overlay.

task-2312878

closes odoo/odoo#60367

X-original-commit: 978cd02406495e7566cefb556276e2ac2292e3f8
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
This commit is contained in:
Benjamin Vray
2020-10-20 11:41:05 +00:00
parent ce5588c85d
commit b971b417c5
@@ -46,6 +46,7 @@ var SnippetEditor = Widget.extend({
xmlDependencies: ['/web_editor/static/src/xml/snippets.xml'],
events: {
'click .oe_snippet_remove': '_onRemoveClick',
'wheel': '_onMouseWheel',
},
custom_events: {
'option_update': '_onOptionUpdate',
@@ -895,6 +896,21 @@ var SnippetEditor = Widget.extend({
}
}
},
/**
* Called when the 'mouse wheel' is used when hovering over the overlay.
* Disable the pointer events to prevent page scrolling from stopping.
*
* @private
* @param {Event} ev
*/
_onMouseWheel: function (ev) {
ev.stopPropagation();
this.$el.css('pointer-events', 'none');
clearTimeout(this.wheelTimeout);
this.wheelTimeout = setTimeout(() => {
this.$el.css('pointer-events', '');
}, 250);
},
});
/**