Components.AI: Correct shell semantics, dismissal, and focus behavior
- Dominant language
- C#
- Stars
- 38.4k
- Forks
- 10.9k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 281
Description
### Is your feature request related to a problem? Please describe the problem.
Drawer and bubble are labeled as dialogs despite being non-modal, lack complete Escape behavior, and do not consistently restore or place focus.
### Describe the solution you'd like
Use labeled region/complementary semantics, expose `aria-expanded`/`aria-controls`, focus the composer on open, restore the trigger on close, support Escape cancellation/dismissal, and never trap focus. Decide whether `popover="manual"` should provide bubble top-layer behavior.
### Additional context
Leaf task for #68227 requirements H3-H5 and open design decision 5.
Contributor guide
Research direction
Start with the Drawer and bubble components and the requirements in #68227, especially H3-H5 and open design decision 5. Verify the intended semantics, expanded/controlled relationships, focus movement and restoration, Escape behavior, focus non-trapping, and whether popover="manual" should provide bubble top-layer behavior; done means these behaviors are implemented consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- accessibility, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100