From af86cabcff0e760ce6e307e1376c1e34b783ff14 Mon Sep 17 00:00:00 2001 From: the-djmaze <> Date: Tue, 6 Sep 2022 20:02:27 +0200 Subject: [PATCH] Improved info for new HTMLDialogElement features --- dev/Knoin/Knoin.js | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/dev/Knoin/Knoin.js b/dev/Knoin/Knoin.js index 8c4c11bcc..6526aaa1c 100644 --- a/dev/Knoin/Knoin.js +++ b/dev/Knoin/Knoin.js @@ -62,24 +62,18 @@ const vmDom.backdrop.hidden = false; }; vmDom.close = v => { - vmDom.backdrop.hidden = true; - vmDom.returnValue = v; - vmDom.removeAttribute('open', null); - vmDom.open = false; +// if (vmDom.dispatchEvent(new CustomEvent('cancel', {cancelable:true}))) { + vmDom.backdrop.hidden = true; + vmDom.returnValue = v; + vmDom.removeAttribute('open', null); + vmDom.open = false; + vmDom.dispatchEvent(new CustomEvent('close')); +// } }; -/* - shortcuts.add('escape', '', vm.keyScope.scope, () => { - if (vmDom.open && false !== this.onClose()) { - this.close(); - return false; - } - return true; Issue with supported modal close - }); -*/ } // https://developer.mozilla.org/en-US/docs/Web/API/HTMLDialogElement/cancel_event // vmDom.addEventListener('cancel', event => (false === vm.onClose() && event.preventDefault())); -// vmDom.addEventListener('close', () => false !== vm.onClose()); +// vmDom.addEventListener('close', () => vm.modalVisible(false)); // show/hide popup/modal const endShowHide = e => { @@ -98,10 +92,10 @@ const if (value) { i18nToNodes(vmDom); visiblePopups.add(vm); - vmDom.style.zIndex = 3000 + (visiblePopups.size * 2); + vmDom.style.zIndex = 3001 + (visiblePopups.size * 2); vmDom.showModal(); if (vmDom.backdrop) { - vmDom.backdrop.style.zIndex = 3000 + visiblePopups.size; + vmDom.backdrop.style.zIndex = 3000 + (visiblePopups.size * 2); } vm.keyScope.set(); requestAnimationFrame(() => { // wait just before the next paint