Skip to content

v0.2.0

Choose a tag to compare

@rawframe-release rawframe-release released this 24 Oct 15:34
0e833bc

0.2.0 (2026-10-24)

Changed

  • Easing curves and springs come from Maul Tween, the family's
    animation library, in place of Maul UI's own. Maul UI now fetches
    Maul Tween 0.1.0 and links it. A timed transition with an easing
    keyword or a cubic Bezier, and rarely a spring, can give a value one
    float step from what 0.1.0 gave, toward the exact curve: about 1% of
    values on a curve and about 3 in 100,000 on a spring. Linear
    transitions, and the frame on which a spring comes to rest, are
    unchanged.
    (#37)

Fixed

  • A host that runs its threads with flush-to-zero, denormals-are-zero
    or another rounding mode now gets the same layout, drawing, hit
    testing, accessibility and text results as every other host. Every
    call that computes (public functions, and the calls platforms make
    into the accessibility adapters) switches to the library's
    floating-point setting and gives the thread's back on return.
    Functions the host passes (measure, baseline, paint, access text,
    events, the clipboard writer, the allocator and the adapters' action
    functions) run in the host's own setting. Results in the default
    setting do not change.
    (#42)
  • Ill-formed UTF-8 is shaped the way the rest of the text component
    reads it: each maximal ill-formed subpart becomes one U+FFFD, so caret
    moves and hit tests no longer land inside a character.
    (#28)
  • An edit whose bytes join the characters beside them no longer leaves
    the caret inside the joined character, where the next keystroke split
    it. A composition's caret at its end is checked too.
    (#29)
  • Undo after muiTextBlock_EndComposition no longer loses text: the
    kept composition is recorded in the edit history.
    (#30)
  • The WebGPU quad shader embedded in the renderer matches its source
    again.
    (#25)