|
| 1 | +{/* Copyright 2026 Adobe. All rights reserved. |
| 2 | +This file is licensed to you under the Apache License, Version 2.0 (the "License"); |
| 3 | +you may not use this file except in compliance with the License. You may obtain a copy |
| 4 | +of the License at http://www.apache.org/licenses/LICENSE-2.0 |
| 5 | +Unless required by applicable law or agreed to in writing, software distributed under |
| 6 | +the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS |
| 7 | +OF ANY KIND, either express or implied. See the License for the specific language |
| 8 | +governing permissions and limitations under the License. */} |
| 9 | + |
| 10 | +import {Layout} from '../../../src/Layout'; |
| 11 | +export default Layout; |
| 12 | + |
| 13 | +import docs from 'docs:@react-spectrum/s2'; |
| 14 | + |
| 15 | +export const hideNav = true; |
| 16 | +export const section = 'Releases'; |
| 17 | +export const tags = ['release', 'React Aria']; |
| 18 | +export const date = 'March 3, 2026'; |
| 19 | +export const title = 'v1.16.0'; |
| 20 | +export const description = 'In today’s release we are excited to announce support for multi-select ComboBox, section support in Tree, and a variety of improvements to overlay positioning, scroll into view behavior, and more!' |
| 21 | +export const isSubpage = true; |
| 22 | + |
| 23 | +# v1.16.0 |
| 24 | + |
| 25 | +In today’s release, we are excited to announce support for [multi-select ComboBox](../ComboBox#taggroup), one of our most requested features! You can now use `selectionMode="multiple"` |
| 26 | +to select multiple options and customize how to display the selected items via `ComboBoxValue`, e.g. using a `TagGroup`. We’ve also added [section support](../Tree#sections-) |
| 27 | +in Tree: simply use `TreeSection` and `TreeHeader` to group tree items into labeled sections. This release also includes improvements to overlay positioning, scroll into view behavior, |
| 28 | +and fixes to address various crashes. |
| 29 | + |
| 30 | +This release contains one of the highest number of contributions to date. A big thank you to our contributors for all your feedback, features and fixes! |
| 31 | + |
| 32 | +## Change log |
| 33 | + |
| 34 | +### General Changes |
| 35 | +* Export `HeaderProps` type - [@RobHannay](https://github.com/RobHannay) - [PR](https://github.com/adobe/react-spectrum/pull/9613) |
| 36 | +* Support collections nested within Activities - [@mhornbacher](https://github.com/mhornbacher) - [PR](https://github.com/adobe/react-spectrum/pull/9300) |
| 37 | +* Export LongPressEvent and MoveEvent types - [@poetryofcode](https://github.com/poetryofcode) - [PR](https://github.com/adobe/react-spectrum/pull/9522) |
| 38 | +* Only handle blur event for resizing viewport on iOS for proper viewport dimensions - [@lixiaoyan](https://github.com/lixiaoyan) - [PR](https://github.com/adobe/react-spectrum/pull/9393) |
| 39 | +* Use KeyboardProps in Keyboard component and context - [@artola](https://github.com/artola) - [PR](https://github.com/adobe/react-spectrum/pull/9668) |
| 40 | +* Prevent docs crash by always placing `template` element children into the `template`'s content - [@LFDanLu](https://github.com/LFDanLu) - [PR](https://github.com/adobe/react-spectrum/pull/9385), [PR](https://github.com/adobe/react-spectrum/pull/9703), [PR](https://github.com/adobe/react-spectrum/pull/9712) |
| 41 | +### Button |
| 42 | +* Allow tooltip to show on hover when Button has `isPending` - [@albertdugba](https://github.com/albertdugba) - [PR](https://github.com/adobe/react-spectrum/pull/9619) |
| 43 | +### Calendar |
| 44 | +* Prevent `setFocusedDate` from stealing focus from elements outside of Calendar - [@AryanBagade](https://github.com/AryanBagade) - [PR](https://github.com/adobe/react-spectrum/pull/9463) |
| 45 | +### ComboBox |
| 46 | +* Move native input inside the ComboBox div for ease of access - [@lixiaoyan](https://github.com/lixiaoyan) - [PR](https://github.com/adobe/react-spectrum/pull/9554) |
| 47 | +* Add support for multi-select ComboBox - [@devongovett](https://github.com/devongovett) - [PR](https://github.com/adobe/react-spectrum/pull/9525) |
| 48 | +* Always close ComboBox upon interacting outside the dropdown - [@snowystinger](https://github.com/snowystinger) - [PR](https://github.com/adobe/react-spectrum/pull/9646) |
| 49 | +### Date Components |
| 50 | +* Add placeholder for Icelandic - [@ofurtumi](https://github.com/ofurtumi) - [PR](https://github.com/adobe/react-spectrum/pull/9600) |
| 51 | +* Expose `isRequired` in render props for DateField, TimeField, DatePicker, and DateRangePicker - [@solssak](https://github.com/solssak) - [PR](https://github.com/adobe/react-spectrum/pull/9659) |
| 52 | +### FocusScope |
| 53 | +* Prevent crash when a single radio button is wrapped in FocusScope - [@jtstothard](https://github.com/jtstothard) - [PR](https://github.com/adobe/react-spectrum/pull/9587) |
| 54 | +### Form |
| 55 | +* Prevent TypeError when Form contains elements without validity - [@sonsu-lee](https://github.com/sonsu-lee) - [PR](https://github.com/adobe/react-spectrum/pull/9614) |
| 56 | +### GridList |
| 57 | +* Add `loaderHeight` prop to GridLayout and WaterfallLayout - [@chirokas](https://github.com/chirokas) - [PR](https://github.com/adobe/react-spectrum/pull/9625) |
| 58 | +### Internationalized |
| 59 | +* Export `fromDateToLocal` - [@maximepvrt](https://github.com/maximepvrt) - [PR](https://github.com/adobe/react-spectrum/pull/9548) |
| 60 | +* Skip native Date fast path when local timezone is overridden via `setLocalTimeZone` - [@apoorvdarshan](https://github.com/apoorvdarshan) - [PR](https://github.com/adobe/react-spectrum/pull/9678) |
| 61 | +### ListBox |
| 62 | +* Add `onKeyDown` prop to ListBoxItem for custom keyboard handling - [@hasegawa-101](https://github.com/hasegawa-101) - [PR](https://github.com/adobe/react-spectrum/pull/9181) |
| 63 | +### Menu |
| 64 | +* Make `aria-posinset` use 1-based index in virtualized Menu - [@sonsu-lee](https://github.com/sonsu-lee) - [PR](https://github.com/adobe/react-spectrum/pull/9615) |
| 65 | +* Restore mouse safe area behavior for submenus - [@reidbarber](https://github.com/reidbarber) - [PR](https://github.com/adobe/react-spectrum/pull/9645) |
| 66 | +* Ensure that opening a submenu via Enter/Space moves focus to first item in submenu - [@LFDanLu](https://github.com/LFDanLu) - [PR](https://github.com/adobe/react-spectrum/pull/9691) |
| 67 | +### NumberField |
| 68 | +* Properly announce pasted value in NumberField - [@snowystinger](https://github.com/snowystinger) - [PR](https://github.com/adobe/react-spectrum/pull/8604) |
| 69 | +### Overlays |
| 70 | +* Fix overlay positioning for overlays positioned in non-viewport containers - [@LFDanLu](https://github.com/LFDanLu) - [PR](https://github.com/adobe/react-spectrum/pull/9343) |
| 71 | +### Scrolling |
| 72 | +* Support `scrollMargin` and inline/block alignment options in `scrollIntoView` and `scrollIntoViewport` - [@nwidynski](https://github.com/nwidynski) - [PR](https://github.com/adobe/react-spectrum/pull/9146) |
| 73 | +* Fix `scrollIntoView` so it accounts for scrollbar width & RTL layout - [@nwidynski](https://github.com/nwidynski) - [PR](https://github.com/adobe/react-spectrum/pull/9634) |
| 74 | +### Tabs |
| 75 | +* Prevent setting `selectedKey=null` to avoid crash in Tabs - [@abeljohn](https://github.com/abeljohn) - [PR](https://github.com/adobe/react-spectrum/pull/9585) |
| 76 | +### Table |
| 77 | +* Fix type so TableHeaderProps.columns properly accepts readonly arrays - [@sonsu-lee](https://github.com/sonsu-lee) - [PR](https://github.com/adobe/react-spectrum/pull/9611) |
| 78 | +### Tooltip |
| 79 | +* Respect delay when open() is called twice in useTooltipTriggerState - [@gohsue](https://github.com/gohsue) - [PR](https://github.com/adobe/react-spectrum/pull/9518) |
| 80 | +### Tree |
| 81 | +* Add support for tree sections - [@yihuiliao](https://github.com/yihuiliao) - [PR](https://github.com/adobe/react-spectrum/pull/9013), [@devongovett](https://github.com/devongovett) - [PR](https://github.com/adobe/react-spectrum/pull/9711), [PR](https://github.com/adobe/react-spectrum/pull/9724) |
| 82 | + |
| 83 | +## Released packages |
| 84 | + |
| 85 | +``` |
| 86 | + - @internationalized/date@3.12.0 |
| 87 | + - @react-aria/actiongroup@3.7.24 |
| 88 | + - @react-aria/autocomplete@3.0.0-rc.6 |
| 89 | + - @react-aria/breadcrumbs@3.5.32 |
| 90 | + - @react-aria/button@3.14.5 |
| 91 | + - @react-aria/calendar@3.9.5 |
| 92 | + - @react-aria/checkbox@3.16.5 |
| 93 | + - @react-aria/collections@3.0.3 |
| 94 | + - @react-aria/color@3.1.5 |
| 95 | + - @react-aria/combobox@3.15.0 |
| 96 | + - @react-aria/datepicker@3.16.1 |
| 97 | + - @react-aria/dialog@3.5.34 |
| 98 | + - @react-aria/disclosure@3.1.3 |
| 99 | + - @react-aria/dnd@3.11.6 |
| 100 | + - @react-aria/focus@3.21.5 |
| 101 | + - @react-aria/form@3.1.5 |
| 102 | + - @react-aria/grid@3.14.8 |
| 103 | + - @react-aria/gridlist@3.14.4 |
| 104 | + - @react-aria/i18n@3.12.16 |
| 105 | + - @react-aria/interactions@3.27.1 |
| 106 | + - @react-aria/label@3.7.25 |
| 107 | + - @react-aria/landmark@3.0.10 |
| 108 | + - @react-aria/link@3.8.9 |
| 109 | + - @react-aria/listbox@3.15.3 |
| 110 | + - @react-aria/menu@3.21.0 |
| 111 | + - @react-aria/meter@3.4.30 |
| 112 | + - @react-aria/numberfield@3.12.5 |
| 113 | + - @react-aria/overlays@3.31.2 |
| 114 | + - @react-aria/progress@3.4.30 |
| 115 | + - @react-aria/radio@3.12.5 |
| 116 | + - @react-aria/searchfield@3.8.12 |
| 117 | + - @react-aria/select@3.17.3 |
| 118 | + - @react-aria/selection@3.27.2 |
| 119 | + - @react-aria/separator@3.4.16 |
| 120 | + - @react-aria/slider@3.8.5 |
| 121 | + - @react-aria/spinbutton@3.7.2 |
| 122 | + - @react-aria/steplist@3.0.0-alpha.25 |
| 123 | + - @react-aria/switch@3.7.11 |
| 124 | + - @react-aria/table@3.17.11 |
| 125 | + - @react-aria/tabs@3.11.1 |
| 126 | + - @react-aria/tag@3.8.1 |
| 127 | + - @react-aria/textfield@3.18.5 |
| 128 | + - @react-aria/toast@3.0.11 |
| 129 | + - @react-aria/toggle@3.12.5 |
| 130 | + - @react-aria/toolbar@3.0.0-beta.24 |
| 131 | + - @react-aria/tooltip@3.9.2 |
| 132 | + - @react-aria/tree@3.1.7 |
| 133 | + - @react-aria/utils@3.33.1 |
| 134 | + - @react-aria/virtualizer@4.1.13 |
| 135 | + - @react-aria/visually-hidden@3.8.31 |
| 136 | + - @react-stately/calendar@3.9.3 |
| 137 | + - @react-stately/checkbox@3.7.5 |
| 138 | + - @react-stately/collections@3.12.10 |
| 139 | + - @react-stately/color@3.9.5 |
| 140 | + - @react-stately/combobox@3.13.0 |
| 141 | + - @react-stately/data@3.15.2 |
| 142 | + - @react-stately/datepicker@3.16.1 |
| 143 | + - @react-stately/disclosure@3.0.11 |
| 144 | + - @react-stately/dnd@3.7.4 |
| 145 | + - @react-stately/form@3.2.4 |
| 146 | + - @react-stately/grid@3.11.9 |
| 147 | + - @react-stately/layout@4.6.0 |
| 148 | + - @react-stately/list@3.13.4 |
| 149 | + - @react-stately/menu@3.9.11 |
| 150 | + - @react-stately/numberfield@3.11.0 |
| 151 | + - @react-stately/overlays@3.6.23 |
| 152 | + - @react-stately/radio@3.11.5 |
| 153 | + - @react-stately/searchfield@3.5.19 |
| 154 | + - @react-stately/select@3.9.2 |
| 155 | + - @react-stately/selection@3.20.9 |
| 156 | + - @react-stately/slider@3.7.5 |
| 157 | + - @react-stately/steplist@3.0.0-alpha.21 |
| 158 | + - @react-stately/table@3.15.4 |
| 159 | + - @react-stately/tabs@3.8.9 |
| 160 | + - @react-stately/toggle@3.9.5 |
| 161 | + - @react-stately/tooltip@3.5.11 |
| 162 | + - @react-stately/tree@3.9.6 |
| 163 | + - @react-stately/virtualizer@4.4.6 |
| 164 | + - @react-types/actionbar@3.1.21 |
| 165 | + - @react-types/actiongroup@3.4.23 |
| 166 | + - @react-types/autocomplete@3.0.0-alpha.38 |
| 167 | + - @react-types/avatar@3.0.21 |
| 168 | + - @react-types/badge@3.1.23 |
| 169 | + - @react-types/breadcrumbs@3.7.19 |
| 170 | + - @react-types/button@3.15.1 |
| 171 | + - @react-types/buttongroup@3.3.23 |
| 172 | + - @react-types/calendar@3.8.3 |
| 173 | + - @react-types/card@3.0.0-alpha.43 |
| 174 | + - @react-types/checkbox@3.10.4 |
| 175 | + - @react-types/color@3.1.4 |
| 176 | + - @react-types/combobox@3.14.0 |
| 177 | + - @react-types/contextualhelp@3.2.24 |
| 178 | + - @react-types/datepicker@3.13.5 |
| 179 | + - @react-types/dialog@3.5.24 |
| 180 | + - @react-types/divider@3.3.23 |
| 181 | + - @react-types/form@3.7.18 |
| 182 | + - @react-types/grid@3.3.8 |
| 183 | + - @react-types/illustratedmessage@3.3.23 |
| 184 | + - @react-types/image@3.5.4 |
| 185 | + - @react-types/label@3.9.17 |
| 186 | + - @react-types/layout@3.3.29 |
| 187 | + - @react-types/link@3.6.7 |
| 188 | + - @react-types/list@3.2.37 |
| 189 | + - @react-types/listbox@3.7.6 |
| 190 | + - @react-types/menu@3.10.7 |
| 191 | + - @react-types/meter@3.4.15 |
| 192 | + - @react-types/numberfield@3.8.18 |
| 193 | + - @react-types/overlays@3.9.4 |
| 194 | + - @react-types/progress@3.5.18 |
| 195 | + - @react-types/provider@3.8.15 |
| 196 | + - @react-types/radio@3.9.4 |
| 197 | + - @react-types/searchfield@3.6.8 |
| 198 | + - @react-types/select@3.12.2 |
| 199 | + - @react-types/shared@3.33.1 |
| 200 | + - @react-types/slider@3.8.4 |
| 201 | + - @react-types/statuslight@3.3.23 |
| 202 | + - @react-types/switch@3.5.17 |
| 203 | + - @react-types/table@3.13.6 |
| 204 | + - @react-types/tabs@3.3.22 |
| 205 | + - @react-types/text@3.3.23 |
| 206 | + - @react-types/textfield@3.12.8 |
| 207 | + - @react-types/tooltip@3.5.2 |
| 208 | + - @react-types/view@3.4.23 |
| 209 | + - @react-types/well@3.3.23 |
| 210 | + - react-aria@3.47.0 |
| 211 | + - react-aria-components@1.16.0 |
| 212 | + - react-stately@3.45.0 |
| 213 | +``` |
0 commit comments