diff --git a/addons/web/static/src/js/core/owl_dialog.js b/addons/web/static/src/js/core/owl_dialog.js index daa29468934..3572742a698 100644 --- a/addons/web/static/src/js/core/owl_dialog.js +++ b/addons/web/static/src/js/core/owl_dialog.js @@ -120,8 +120,12 @@ odoo.define('web.OwlDialog', function () { /** * @private + * @param {MouseEvent} ev */ - _onBackdropClick() { + _onBackdropClick(ev) { + if (!this.props.backdrop || ev.target !== ev.currentTarget) { + return; + } if (this.props.backdrop === 'static') { if (this.mainButton) { this.mainButton.focus(); diff --git a/addons/web/static/src/scss/bootstrap_review.scss b/addons/web/static/src/scss/bootstrap_review.scss index 8fab23b0b1a..75514a1065d 100644 --- a/addons/web/static/src/scss/bootstrap_review.scss +++ b/addons/web/static/src/scss/bootstrap_review.scss @@ -80,6 +80,20 @@ } } +// Do not display the backdrop element added by bootstrap in the body and add a +// background on the modal to keep the same effect. The bootstrap backdrop was +// probably useful for compatibility with .modal { display: block; - pointer-events: none; - } - - .modal-content { - pointer-events: auto; } } diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index 7cb009b95fb..fab3018fb46 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -461,12 +461,13 @@
-