Skip to content

v0.19.2

Choose a tag to compare

@tchak tchak released this 15 Jun 17:29

Fixed

  • A full-document morph (e.g. turbo_stream.refresh) no longer removes
    React-rendered DOM that lives outside the server document — most notably
    react-aria overlays (popovers, listboxes) which portal directly into
    <body>. Previously, morphing while such an overlay was open (e.g. a
    ComboBox selection that auto-submits a form) removed the overlay's
    React-managed nodes mid-interaction, corrupting react-aria's state and
    leaving the trigger input non-reactive (keystrokes dropped, listbox never
    reopens). The morph now preserves any node React owns (detected via its
    fiber) via Plugin.shouldPreserveElement. Regression introduced in 0.19.0.