From 1a013201cc7dd503e16379dea9936af569341668 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristj=C3=A1n=20Oddsson?= Date: Tue, 8 Mar 2022 17:18:56 +0000 Subject: [PATCH 1/2] Up-skip test --- test/test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test.js b/test/test.js index c90db77..8f322a5 100644 --- a/test/test.js +++ b/test/test.js @@ -89,7 +89,7 @@ describe('details-dialog-element', function() { assert(!details.open) }) - it.skip('manages focus', async function() { + it('manages focus', async function() { summary.click() await waitForToggleEvent(details) assert.equal(document.activeElement, dialog) From 5526f9725f706792c9baef5594b607e7babe3f30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristj=C3=A1n=20Oddsson?= Date: Tue, 8 Mar 2022 17:19:19 +0000 Subject: [PATCH 2/2] Consider a element hidden if it's in a closed details element --- src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/index.ts b/src/index.ts index 55eb9b7..f63ca02 100644 --- a/src/index.ts +++ b/src/index.ts @@ -36,6 +36,7 @@ function focusable(el: Target): boolean { function visible(el: Target): boolean { return ( !el.hidden && + !el.closest('details:not([open])') && (!(el as Disableable).type || (el as Disableable).type !== 'hidden') && (el.offsetWidth > 0 || el.offsetHeight > 0) )