- From: Keith Cirkel <notifications@github.com>
- Date: Fri, 08 Dec 2023 08:24:00 -0800
- To: w3ctag/design-reviews <design-reviews@noreply.github.com>
- Cc: Subscribed <subscribed@noreply.github.com>
- Message-ID: <w3ctag/design-reviews/issues/920@github.com>
こんにちは TAG-さん! I'm requesting a TAG review of the "Invokers API", as [described in the Open UI explainer](https://open-ui.org/components/invokers.explainer/). Adding invoketarget and invokeaction attributes to `<button>` and `<input type="button">` / `<input type="reset">` elements would allow authors to assign behaviour to buttons in a more accessible and declarative way, while reducing bugs and simplifying the amount of JavaScript pages are required to ship for interactivity. Buttons with `invoketarget` will - when clicked, touched, or enacted via keypress - dispatch an `InvokeEvent` on the element referenced by `invoketarget`, with some default behaviours. ```html <button invoketarget="my-dialog">This opens a dialog</button> <dialog id="my-dialog">This is the dialog</dialog> ``` While there are many ideas for what those behaviours will be, for the _initial_ implementation we want to ship: - Showing, hiding and toggling popovers. (This is very similar to `popovertarget`). - Showing a Dialog as modal, and closing a dialog. --- - Explainer¹ (minimally containing user needs and example code): https://open-ui.org/components/invokers.explainer/ - User research: [url to public summary/results of research] - Security and Privacy self-review²: See below - GitHub repo (if you prefer feedback filed there): https://github.com/openui/open-ui (please use the Invokers label) - Primary contacts (and their relationship to the specification): - Keith Cirkel (@keithamus), GitHub - Luke Warlow (@lukewarlow), Unaffiliated - Mason Freed (@mfreed7), Google - Organization/project driving the design: OpenUI - External status/issue trackers for this feature (publicly visible, e.g. Chrome Status): https://chromestatus.com/feature/5142517058371584 Further details: - [x] I have reviewed the TAG's [Web Platform Design Principles](https://www.w3.org/TR/design-principles/) - The group where the incubation/design work on this is being done (or is intended to be done in the future): [OpenUI](https://open-ui.org/) - The group where standardization of this work is intended to be done ("unknown" if not known): WHATWG - Existing major pieces of multi-stakeholder review or discussion of this design: https://github.com/openui/open-ui/issues?q=is%3Aissue+label%3Ainvokers - Major unresolved issues with or opposition to this design: - Mostly to do with the naming of the actions, and how they fit within the existing attribute naming scheme. At current we have `showpopover`, `hidepopover`, `togglepopover`, `showmodal`, `close` and `auto`. It seems as though these should include dashes, but we've reserved dashes for custom actions (see [openui/open-ui#900](https://github.com/openui/open-ui/issues/900) and [openui/open-ui#969](https://github.com/openui/open-ui/issues/969)). - This work is being funded by: Keith Cirkel You should also know that... This works surrounds some larger work pieces, for example there is follow on work to add more actions, follow on work to add an `interesttarget` which will do the same but for hover/focus style interactions, and we are also looking to deprecate `popovertarget` in favour of this API. While we're not seeking review for _those_ parts, I hope they can paint a broader context of what is planned here. We'd prefer the TAG provide feedback as (please delete all but the desired option): 🐛 open issues in our GitHub repo for **each point of feedback** -- Reply to this email directly or view it on GitHub: https://github.com/w3ctag/design-reviews/issues/920 You are receiving this because you are subscribed to this thread. Message ID: <w3ctag/design-reviews/issues/920@github.com>
Received on Friday, 8 December 2023 16:24:06 UTC