Bevy Standard Widgets: Roadmap
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 161
Description
This is a tracking issue for the work described in discussion #16900 and referencing the prototype implementation which can be found here: https://github.com/viridia/bevy_core_widgets
* [x] Upstream interaction state components (`Checked`, `Hovering` and friends)
* [ ] Core widgets, with examples
* [x] Button
* [x] Slider
* [x] Checkbox
* [x] Radio Group and Radio Button
* [x] Scrollbar
* [x] Number Scrubber** (edit numeric fields by dragging or keyboard)
* [ ] Discrete Scrubber (edit discrete choices by dragging or keyboard)
* [x] Menu Button
* [x] Dialog
* [x] Text Input
* [ ] Notification
* [ ] Tooltips
* [ ] Infotips
* [x] Upstream cursor management framework
* [x] Implement theming
* [ ] Implement opinionated editor widgets, with examples
* [x] Settle on final naming for opinionated widget collection
* [x] Button
* [x] Slider
* [x] Combo Slider (Slider with editable text)
* [x] Checkbox
* [x] Toggle Switch (using Core Checkbox)
* [x] Disclosure Triangle (prototype done)
* [x] Radio Group and Radio Button
* [x] Scrollbar and ScrollArea (prototype done)
* [x] List View (prototype done)
* [x] Combo Number Scrubber
* [x] Menu Button (prototype done)
* [x] Dialog
* [x] Text Input
* [x] Color Gradient Slider
* [x] Color Plane (2-axis picker)
* [x] Color Swatch with Alpha Grid
* [ ] Swatch Grid
* [ ] Swatch with dropdown color picker
* [ ] Tab Deck
* [ ] Tree View
* [ ] Toasts
* [ ] Implement opinionated editor layout components (post-BSN)
* [ ] Page layout variants
* [ ] Toolbar
* [ ] Sidebar
Spin-off tasks:
* [x] Rounding options for sliders and other numeric inputs
* [ ] UI Transition animations framework: switch slider, disclosure triangle rotate, dialog enter/exit
* [x] #20499
* [ ] Verify that variable-width fonts work in Bevy, and then replace FiraSans.
* [x] Focus Rings
* [x] #20524
* [x] Add Reflection support to CoreWidgets
** A "scrubber" is a numeric input widget which allows editing either by typing or dragging, as seen in blender.
@alice-i-cecile
Contributor guide
Assessment
This issue has not been assessed yet.