diff --git a/src/js/combobox.js b/src/js/combobox.js index 5976b75..8af4ce9 100644 --- a/src/js/combobox.js +++ b/src/js/combobox.js @@ -507,7 +507,7 @@ if (!root.contains(event.target)) root.close(false); }; const handleDocumentPopover = (event) => { - if (event.detail.source !== root) root.close(false); + if (!root.contains(event.detail.source)) root.close(false); }; state.input.addEventListener('focus', handleInputFocus); diff --git a/src/js/dropdown-menu.js b/src/js/dropdown-menu.js index 04c7e0e..7edb92e 100644 --- a/src/js/dropdown-menu.js +++ b/src/js/dropdown-menu.js @@ -165,7 +165,7 @@ }; const handleDocumentPopover = (event) => { - if (event.detail.source !== root) root.close(false); + if (!root.contains(event.detail.source)) root.close(false); }; state.trigger.addEventListener('click', handleTriggerClick); diff --git a/src/js/popover.js b/src/js/popover.js index 69dd4ff..c789baa 100644 --- a/src/js/popover.js +++ b/src/js/popover.js @@ -60,7 +60,7 @@ }; const handleDocumentPopover = (event) => { - if (event.detail.source !== popoverComponent) { + if (!popoverComponent.contains(event.detail.source)) { closePopover(false); } }; diff --git a/src/js/select.js b/src/js/select.js index c42ce1d..19b04d9 100644 --- a/src/js/select.js +++ b/src/js/select.js @@ -373,7 +373,7 @@ if (!root.contains(event.target)) root.close(false); }; const handleDocumentPopover = (event) => { - if (event.detail.source !== root) root.close(false); + if (!root.contains(event.detail.source)) root.close(false); }; state.trigger.addEventListener('keydown', handleTriggerKeydown);