Skip to content

superui v0.3.5 (bevy 0.19)

Choose a tag to compare

@strowk strowk released this 25 Sep 19:34
· 157 commits to main since this release

Added

  • <input type=range> range slider: draggable and keyboard-controllable (arrow
    keys, Home/End), with min, max, step, and value attributes (value
    clamped to range; defaults to the midpoint). Fires DOM input while
    interacting and change on commit, and .value is readable and writable from
    JS. Renders a browser-like slider by default, fully overridable via the new
    ::slider-track, ::slider-fill, and ::slider-thumb pseudo-elements.
  • Text <input> backed by Bevy EditableText: real text editing with a visible
    text cursor. Placeholder text fades to the input's text color.
  • <textarea> support as a multiline EditableText.
  • Tailwind-compatible class utilities: utility classes resolved at build time,
    documented in the website CSS reference.
  • widgets_showcase example demonstrating a text input, checkbox, and range
    slider, with a screenshot-based end-to-end test.

Changed

  • Keyboard focus and Tab navigation are unified on Bevy's InputFocus.
  • Bevy 0.19 is the only actively developed line; the 0.17 and 0.18 lines are
    maintenance-only.

Fixed

  • Editable <input>/<textarea> fields no longer lose focus on mouse release. A
    field with no JS listener was treated as non-interactive and let the
    release-click fall through to the layer behind it, which stole focus on
    mouse-up; editable controls now block those picks. Button-family controls
    (<button>, <input type=button|submit|reset|image>) stay pass-through unless
    they carry a listener.
  • Fixing teardown: a mounted UI is correctly cleaned up when its root entity is despawned.