diff --git a/addons/web/static/src/core/popover/popover_controller.js b/addons/web/static/src/core/popover/popover_controller.js index 32eeb20218d..b82c1fc35ce 100644 --- a/addons/web/static/src/core/popover/popover_controller.js +++ b/addons/web/static/src/core/popover/popover_controller.js @@ -42,6 +42,7 @@ export class PopoverController extends Component { !this.popoverRef.el.contains(target) ) { this.props.close(); + ev.preventDefault(); } } diff --git a/addons/web/static/tests/core/popover/popover_service_tests.js b/addons/web/static/tests/core/popover/popover_service_tests.js index 02f90c09512..619150668d5 100644 --- a/addons/web/static/tests/core/popover/popover_service_tests.js +++ b/addons/web/static/tests/core/popover/popover_service_tests.js @@ -85,6 +85,30 @@ QUnit.test("close on click away", async (assert) => { assert.containsNone(fixture, ".o_popover #comp"); }); +QUnit.test("close on click away should be default prevented", async (assert) => { + assert.expect(6); + class Comp extends Component {} + Comp.template = xml`