Minor Changes
- feat(RadioGroup): set
autocomplete="off"on the hidden input by default to discourage browser autofill, and add anautocompleteprop toRadioGroup.Rootto override it (#2198)
Patch Changes
-
fix(Calendar): fall back to the default
placeholderwhen spread props are reassigned andplaceholderis not bound, preventingCannot read properties of undefined (reading 'set'). Also applies toRangeCalendar,DatePicker,DateRangePicker,DateRangeField,TimeField, andTimeRangeField. (#2226) -
fix(Select): open the trigger on a click that no pointer press precedes (
detail: 0), such aselement.click()or a VoiceOver activation in Safari (#2227) -
fix(Calendar/RangeCalendar): prevent weekday headers, heading, and cell labels from shifting by a day when using a
ZonedDateTimein a time zone ahead of the local one (#2215) -
fix(Collapsible/Accordion): prevent content mounted open from playing its open animation (#2209)
-
fix(Command): skip deferred root work after
Command.Rootis destroyed (#2210) -
fix(Command): scroll the first item into view when items aren't grouped (#2003)
-
fix(DatePicker): respect
preventDefault()inContent'sonOpenAutoFocusso the calendar day is not auto-focused (also applies toDateRangePicker) (#2219) -
fix: prevent content from flashing visible for a frame after its exit animation when Svelte async mode is enabled (#2193)
-
fix(Select/Combobox/DropdownMenu): don't open the trigger when it's disabled by an ancestor
<fieldset disabled>(#2214) -
fix(body-scroll-lock): restore body
pointer-eventsas soon as the last lock is released so clicks right after a layer closes aren't lost (#2221) -
fix(FocusScope): keep focus on elements inside an open shadow root nested in the scope (e.g. a web component's
<input>) instead of treating it as escaping the trap (#2223) -
fix(FocusScope): prevent page scroll when auto-focusing on open, trapping focus, and restoring focus on close (#2217)
-
fix(LinkPreview): always remove the document
pointeruplistener registered while open. When the content node wasn't attached yet, the open watcher returned early before its cleanup, so the listener was never unsubscribed and kept firing after the preview closed or unmounted. (#2194) -
fix(NavigationMenu): only register a
NavigationMenu.Content's dismiss/escape layers while it is open so closedforceMountcontent no longer closes the open item on inside clicks or steals escape focus (#2218) -
fix(Command): item selection logic (#2074)
-
fix: call
onOpenChangeCompletewithtrueafter content opens and its animations finish, not only on close (#2199) -
fix(HiddenInput): keep hidden form inputs in sync with component state after a form reset. A native form reset now restores the current value instead of clearing the input, so setting a value right after
form.reset()(e.g. SvelteKituse:enhance'supdate()) is no longer lost. Applies toRadioGroup,Select,Combobox,Checkbox,Switch,RatingGroup, and the date/time fields (#1942) (#2212) -
fix(DateField): reset the segments when
valueis cleared externally after a date was typed in (#2196) -
fix(Select/Combobox): highlight the selected item on open when its value is an empty string, and allow selecting it with Enter in
Combobox(#2213) -
fix(Tabs, Accordion, ToggleGroup, RadioGroup, Toolbar, Menubar): ignore the items and triggers of a nested root of the same kind during keyboard navigation, so arrow keys,
Home,Endand wrapping stay within the outer group (#2190) -
Resume a paused focus scope when it registers again, so a menu whose trigger sits in a tooltip moves focus into its content when opened. (#2201)
-
fix(DismissibleLayer): close an open layer when a second outside
pointerdownlands within its 10ms dismissal debounce. The second event replaced the pending one and was judged against the newly opened layer, so rapidly right clicking acrossContextMenutriggers left earlier menus open. (#2229) -
Set
aria-selected="false"on unselectedSelect.ItemandCombobox.Itemoptions so every option exposes its selection state per the APG listbox pattern. (#2188) -
fix(Select): give
Select.Triggerthecomboboxrole and pointaria-controlsat the mounted listbox (#2216) -
fix(Select, Combobox): keep aligning the highlighted item while the content settles after positioning. Chrome that mounts once the content is placed (scroll buttons in the flex flow, a header, a footer) shrinks the viewport under the open-time alignment and left a far-down selection below the fold; the content now realigns on every viewport resize until the user scrolls, which also retires the scroll down button's own mount-time realign. (#2157)
-
fix(Checkbox): pass the
formprop to the button again and submit the linked form whenEnteris pressed withtype="submit"(#2204) -
fix(Slider): throw a descriptive error for non-finite
min/max/step(or astepof0) instead of hanging the browser (#2211) -
fix: skip deferred animation-complete callbacks when the owning component is destroyed before they run (#2210)
-
fix(Select, Combobox): stop the scroll button auto scroll when the content closes while the button is hovered (#2197)
-
fix(AlertDialog): prevent delayed open autofocus from focusing replaced content (#2220)
-
fix(DateField): keep the day period when typing or deleting the hour in 12-hour mode (#2228)
-
fix(Tooltip): close when any scrolling ancestor of the trigger scrolls (#2206)