Dialog Element Implementation
This implements the Dialog Element according to the spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#the-dialog-element
There's a couple side effects of properly getting the web platform tests to pass:
- implemented a subset of the
autofocusattribute functionality. - Computed styles was also only partially implemented in order to get the
inert-does-not-match-disabled-selector.htmltest to pass. - The partial implementation of computed styles caused a few of the
pseudo-classestests to pass.
Appreciate all the feedback on this! I've been looking at the focus algorithms you suggested implementing correctly (thank you for finding them, digging through the spec is a skill on its own apparently) and I think its doable, there's just a decent amount of requirements that get pulled in and life has gotten in the way of me working on it. I'm hoping to get some time to focus on it this week or at least find someone else who has some time to invest and help out.
I think I've combed through all the autofocus tests and found which ones were passable and which ones were not, but probably best to double check that...I cannot get the Script blocking style sheet implementation to work correctly and I'm not sure it can due to how some of the timing works right now, so it's been left to fail for now but is partially implemented.
Thank you so much for all the work done in this so far! Would love to see this getting over the line in the near future! 🙏🏼
Unfortunately, I was unable to review this PR in a timely manner, since it's fairly large and I have less time for jsdom than I'd like. And now, a bunch of new web platform tests have been added, many of which fail. (Possibly due to changes in the dialog spec itself.) So we need someone to go through and figure out which ones we can pass, and update the implementation as appropriate.
I'm very sorry about this. I know it's a subpar contributor experience.
I'll try to help in a small way by pulling out the color-related changes into a separate PR, which I should be able to merge quickly on my own.
Any progress here?
Hey, Thanks for this PR, any plans to merge it soon?