v1.5.0
May 19, 2026
View as MarkdownGeneral changes
- Improve mount performance with interaction splitting, including closed popup mount performance by up to 50% and unmounting performance by up to 85% (#4661) by @atomiks
- Use local document for virtual arrow (#4662)
- Fix macOS Safari and Firefox minimizing fullscreen when closing popups with Esc (#4695)
- Drop unnecessary memoization (#4693)
- Do not use
Math.random()inuseStableCallback()(#4732) - Fix return focus when reference disconnects (#4655)
- Don’t steal initial focus if focus already moved inside a popup (#4775)
Alert Dialog
- Fix handle defaults (#4834)
Autocomplete
- Fix native
FormDatafor popup inputs (#4725)
Checkbox
- Submit the associated form when pressing Enter (#4713)
Combobox
- Expose clear visibility state (#4664)
- Fix popup input form submit (#4687)
- Preserve
closeQuerywhen closing multiple input-inside-popup combobox (#4715) - Fix RTL component behavior (#4840)
- Ignore hidden-input changes while readonly or disabled (#4810)
Dialog
- Consider the controlled
openprop for open state detection (#4712)
Drawer
- Forward
styleprop in<Drawer.Viewport>(#4841)
Field
- Avoid
flushSyncduring validation (#4685)
Form
- Avoid
flushSyncduring validation (#4685)
Menu
- Fix submenu pointer-events scope for
keepMountedportals (#4723) - Support
<Menu.GroupLabel>in<Menu.RadioGroup>(#4826) - Consider the controlled
openprop for open state detection (#4712)
Navigation Menu
Number Field
OTP Field
- Breaking change: Rename
sanitizeValue()tonormalizeValue()and allow composing with validation (#4717) - Avoid
flushSyncduring validation (#4685) - Support Ctrl and Cmd shortcuts (#4606)
- Fire
onValueComplete()for full paste (#4690) - Fix vertical arrow slot navigation (#4844)
- Ignore hidden input changes while readonly or disabled (#4806)
- Prevent locked hidden autofill validation (#4827)
- Fix RTL arrow navigation (#4847)
Popover
- Fix RTL component behavior (#4840)
- Preserve active trigger on close press (#4741)
- Consider the controlled
openprop for open state detection (#4712)
Preview Card
- Consider the controlled
openprop for open state detection (#4712) - Integrate inline positioning (#2074)
Scroll Area
- Fix RTL component behavior (#4840)
Select
- Clear stale item text ref (#4683)
- Add
data-popup-sideto trigger (#4671) - Allow mouse selection without highlight (#4699)
- Ignore hidden-input changes while readonly or disabled (#4810)
- Fix nested Select requiring extra outside clicks to dismiss parent (#4820)
Tabs
- Fire
onValueChange()for automatic tab selection (#4704)
Toast
- Re-use
getElementTransform()and remove local implementation (#4749) - Fix stuck drag state on release (#4742)
- Remove memoized selector (#4751)