[menu] [openable] allow author choice of opening a submenu inline or as a popup
Nobody has claimed this yet.
- Dominant language
- MDX
- Stars
- 4.5k
- Forks
- 226
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 4
Description
We are likely all familiar with the use case for submenu popups being invoked on hover/focus or click of a menu's menuitem.
I've also seen use cases where authors have created "submenus" which are more like expand/collapse groups within a menu list.
I mention this because it could be another use case for the proposed openable attribute, and could allow for something like:
<menulist>
...
<menuitem command=toggle commandfor=g>whatever</menuitem>
<fieldset openable id=g>
<menuitem>A</menuitem>
<menuitem>B</menuitem>
<menuitem>C</menuitem>
</fieldset>
...
</menulist>
this could allow for an expand/collapse state on the menuitem with the command=toggle. it would not invoke it as a popover. ideally, this could allow for an automatic naming mechanism for the fieldset (allowing it to be exposed as a role=group with accName "whatever"). this automatic naming helping to make sure that the group start/end points were defined - and if someone wanted to give the fieldset a more specific name when the set was in the expanded state, they could use the legend element to do so. (or whatever the elements end up being for grouping/naming said group for menuitems)
cc @lukewarlow
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the proposed openable attribute and the menu, menuitem, fieldset, legend, and command=toggle examples in this issue. Determine whether inline expansion and popup behavior can share this model, including automatic group naming and accessibility semantics. Done means reaching a concrete specification decision for the behavior and naming model.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html
- Domain
- accessibility, frontend, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100