@enact/sandstone
Version:
Large-screen/TV support library for Enact, containing a variety of UI components.
1,348 lines (828 loc) • 68.8 kB
Markdown
# Change Log
The following is a curated list of changes in the Enact sandstone module, newest changes on the top.
## [2.9.13] - 2025-04-24
### Fixed
- `sandstone/Input.InputField` to receive focus properly when not contained in the same SpotlightContainer
## [2.9.12] - 2025-04-16
### Fixed
- `sandstone/ContextualPopupDecorator` to focus content only after the state has been updated when popup opens
- `sandstone/Input.InputField` to receive focus properly when navigating with directional keys
- `sandstone/Scroller` with `editable` prop to not move hidden items
## [2.9.11] - 2025-03-27
### Fixed
- `sandstone/ContextualPopupDecorator` to update popup position properly when Wrapped component updated
- `sandstone/Icon` to not flip `help` icon in he-IL locale when `flip` prop is `auto`
- `sandstone/Steps` to update opacity of future steps to match the GUI guide
## [2.9.10] - 2025-02-24
### Fixed
- `sandstone/Scroller` to restore focus when focus is lost after scroll by voice control
## [2.9.9] - 2025-02-13
### Fixed
- `sandstone/Panels.Header` to correct position when panel is added dynamically in `sandstone/WizardPanels`
## [2.9.8] - 2025-02-04
### Fixed
- `sandstone/PageViews` to focus spottable components on the same line with arrows for navigation when `fullContents`
- `sandstone/Scroller` with `editable` prop focus behavior to match the latest UX
- `sandstone/Scroller` with `editable` prop to move focus properly when holding directional key
- `sandstone/TooltipDecorator` to hide a tooltip when tapping outside of disabled component
## [2.9.7] - 2025-01-16
### Fixed
- `sandstone/ContextualPopupDecorator` to update popup position properly when the DOM tree changes
## [2.9.6] - 2024-12-11
### Added
- `sandstone/Icon` supported icon list, adding new icon `calibration`
### Changed
- `sandstone/QuickGuidePanels` to read out more details according to the latest UX guide
### Fixed
- `sandstone/Scroller` to focus properly when the spottable node is bigger than the size of viewport by voice control
- `sandstone/Scroller` to prevent the native scrolling behavior caused by keydown events when a popup is open
## [2.9.5] - 2024-11-19
### Added
- `sandstone/Icon` supported icon list, adding new icons `ai`, `alert01`, and `alert02`
### Fixed
- `sandstone/ContextualPopupDecorator` to update popup position properly when the screen orientation change
- `sandstone/Input` keypad layout when `type` prop is `number` or `passwordnumber` and the screen is in portrait mode or `popupType` prop is `overlay` and in large text mode
- `sandstone/Slider` to not show console error when dragging with touch
## [2.9.4] - 2024-10-29
### Fixed
- `sandstone/IconItem` to restart marquee after done editing in `sandstone/Scroller` with `editable` prop
- `sandstone/PageViews` and `sandstone/QuickGuidePanels` dot page indicators to be aligned center
- `sandstone/Scroller` to focus content area properly on supported platforms when `focusableScrollbar` prop is `byEnter`
- `sandstone/Scroller` with `editable` prop to move an item via 5-way keys properly in pointer mode
## [2.9.3] - 2024-10-15
### Added
- `sandstone/MediaControls` props `jumpBackwardAriaLabel` and `jumpForwardAriaLabel` to override aria-label of jumpButtons
- `sandstone/PageViews` prop `autoFocus` to set whether focus element automatically or not
### Fixed
- `sandstone/PageViews` to not clip the shadow of navigation buttons when `fullContents` prop is `true`
- `sandstone/Scroller` to focus the topmost element after scroll by voice control
- `sandstone/Scroller` to read out properly when `sandstone/Panels` has `sandstone/Scroller` with `focusableScrollbar`
- `sandstone/VideoPlayer` to show only the mini feedback when pressing play/pause key
## [2.9.2] - 2024-09-26
### Fixed
- `sandstone/Panels.Header` to show title and subtitle properly in `sandstone/WizardPanels`
- `sandstone/Scroller` to show scroll indicator when `focusableScrollbar` prop is `true`
## [2.9.1] - 2024-09-09
### Added
- `sandstone/Alert` public class names `alert`, `content`, `fullscreen`, and `title`
- `sandstone/Steps` prop `highlightCurrentOnly` to highlight and scale only the current step
### Changed
- `sandstone/Icon` supported icon list, adding new icons
### Fixed
- `sandstone/Scroller`, `sandstone/Slider`, and `sandstone/VirtualList` to have default prop when `undefined` prop is passed
- `sandstone/Steps` prop `size` to accept number type
## [2.9.0] - 2024-07-17
### Added
- `sandstone/Scroller` `editable.blurItemFuncRef` prop to provide a function for blurring the focused item
### Changed
- `sandstone/PageViews` styling to match the latest GUI
### Fixed
- `sandstone/Input` back button to be disabled when `disabled` prop is `true`
- `sandstone/Popup` to restore focus when a popup is open by default and then closed
## [2.9.0-beta.1] - 2024-06-17
### Added
- `sandstone/Icon` supported icon list, adding new icon `create`
## [2.9.0-alpha.4] - 2024-06-05
### Changed
- `sandstone/ContextualPopupDecorator` and `sandstone/Dropdown` to have sibling DOM node as alternative to findDOMNode API which will be removed in React 19
- `sandstone/PageViews` to hide dot page indicator when there is only one page
### Fixed
- `sandstone/FixedPopupPanels` to show the outline appropriately in high-contrast mode
## [2.9.0-alpha.3] - 2024-05-24
### Added
- Support for QHD displays
- `sandstone/Icon` supported icon list, adding new wifi5G icons
- `sandstone/PageViews` prop `fullContents` to maximize its contents area
### Fixed
- `sandstone/TabLayout` to move focus properly by 5-way directional key when it is in Panels
- `sandstone/QuickGuidePanels` to export `Panel` instead of `QuickGuidePanel`
## [2.9.0-alpha.2] - 2024-04-22
### Added
- `sandstone/ThemeDecorator.AccessibilityDecorator` prop `focusRing` to support focus ring to IcomItem and ImageItem
## [2.9.0-alpha.1] - 2024-04-09
### Added
- `sandstone/PageViews` component
- `sandstone/Scroller.ContentContainerDecorator` to allow component to be a scroll target when its descendant is focused
- `sandstone/VideoPlayer` prop `setPlaybackSpeed` to support playback speed adjustment
### Changed
- Popup family components to enhance contrast in high-contrast mode for improved visibility
### Fixed
- `sandstone/VirtualList` to show the focused item properly when switching from pointer mode to 5-way mode
- `sandstone/VirtualList.VirtualGridList` to show the focused item fully when focus moves via 5-way keys inside a list
## [2.7.15] - 2024-03-05
### Added
- `sandstone/Scroller.ContentContainerDecorator` to allow component to be a scroll target when its descendant is focused
### Fixed
- `sandstone/VirtualList` to show the focused item properly when switching from pointer mode to 5-way mode
- `sandstone/VirtualList.VirtualGridList` to show the focused item fully when focus moves via 5-way keys inside a list
## [2.8.0] - 2024-02.07
### Fixed
- `sandstone/Scroller` with `editable` prop to remain focused on the selected item when completing edit by down or enter key in pointer mode
- `sandstone/Scroller` not to forward `onBack` handler of `sandstone/Panels` when focus moves from scroll thumb to BodyText via back key
- `sandstone/VirtualList` to have proper scroll position when item with affordance is larger than scroll area
## [2.5.12] - 2024-02-02
### Fixed
- `sandstone/WizardPanels` to read out the correct step when using `current` prop
## [2.7.14] - 2024-01-23
No significant changes.
## [2.7.13] - 2023-12-08
### Changed
- `sandstone/Dropdown` to read out more details
- `sandstone/Scroller` with `editable` prop to complete editing when 'down' key is pressed during editing
- `sandstone/Slider` to read out more details
- `sandstone/TabLayout` to move focus from tab contents to tab menu via back key
- `sandstone/TabLayout` to read out more details
### Fixed
- `sandstone/Scroller` with `editable` prop to rearrange items properly when moving pointer very fast
- `sandstone/Scroller` with `editable` prop to complete editing when focus left by 5-way key in pointer mode
## [2.7.12] - 2023-10-23
### Fixed
- `sandstone/Scroller` to read out the announcement of completion properly when `editable` is given
## [2.7.11] - 2023-10-13
### Fixed
- `sandstone/TabLayout` to revert 2.7.9 fix that change back key behavior
## [2.7.10] - 2023-09-20
### Fixed
- `sandstone/Scroller` to not show console error when an abnormal `editable.initialSelected` is given
- `sandstone/VirtualList` to not snatch focus from other list on the first render
## [2.7.9] - 2023-09-12
### Changed
- `sandstone/TabLayout` back key behavior to match the latest UX
### Fixed
- `sandstone/Panels.Header` to not show `slotAfter` in incorrect position at first rendering when `centered` is given
- `sandstone/Scroller` to read out properly when `editable` is given
## [2.7.8] - 2023-08-31
### Changed
- `sandstone/IconItem` to match the latest design
### Fixed
- `sandstone/QuickGuidePanels` to focus the last focused button when navigating between views
## [2.7.7] - 2023-08-22
### Added
- `sandstone/QuickGuidePanels` read out feature to support A11y
### Fixed
- `sandstone/Scroller` to support hiding all items when `editable` is given
- `sandstone/Scroller` to not lose focus by back key when `editable` is given
## [2.7.6] - 2023-08-10
### Changed
- `sandstone/TabLayout` enter key behavior to match the latest UX
### Fixed
- `sandstone/Dropdown' to focus properly the first option and the last option via page up and page down
- `sandstone/QuickGuidePanels` to not lose focus when the last view is displayed
## [2.7.5] - 2023-08-04
### Added
- `sandstone/Scroller` prop `editable.initialSelected` to allow start edit mode with selected item
### Changed
- `sandstone/Scroller` back key behavior to match the latest UX when `editable` is given
### Fixed
- `sandstone/Scroller` to handle focus moving properly when `editable` is given
- `sandstone/Scroller` to not select disabled item in scroller when `editable` is given
- `sandstone/VirtualList` to move focus properly by 5-way directional key hold when `spotlight/SpotlightContainerDecorator` config option `continue5WayHold` is set
## [2.7.4] - 2023-07-19
### Fixed
- `sandstone/VirtualList.VirtualGridList` to not scale DOM out of a list by wheeling when `snapToCenter`
## [2.7.3] - 2023-07-14
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll properly by hovering inside a nested scroller
## [2.7.2] - 2023-06-30
### Added
- `sandstone/Icon` supported icon list, adding new icons `exclamation`, `show`, and `hide`
- `sandstone/Scroller` to support showing buttons when an item is focused and `editable` is given
- `sandstone/QuickGuidePanels` prop `onClose`
### Fixed
- `sandstone/QuickGuidePanels` to update a close button position properly in RTL locales
- `sandstone/Scroller` to focus properly when item is selected and `editable` is given
- `sandstone/VirtualList` to not lose focus when a focused item is removed by reduced `dataSize`
## [2.5.11] - 2023-06-07
### Fixed
- `sandstone/VideoPlayer` to keep showing media controls while a user is wheeling
## [2.7.1] - 2023-06-02
### Added
- `sandstone/Scroller` to support hiding items when `editable` is given
- `sandstone/QuickGuidePanels` component
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to stop scrolling by `hoverToScroll` when the pointer disappears
- `sandstone/VideoPlayer` to focus the play/pause button when the playback controls is shown using the 5-way down key
- `sandstone/VideoPlayer` to keep showing media controls while a user is wheeling
- `sandstone/WizardPanels` to read out the correct step when using `current` prop
## [2.7.0] - 2023-04-25
### Added
- `sandstone/IconItem` component
### Changed
- `sandstone/Alert` alignment of text content to be left for fullscreen type
### Fixed
- `sandstone/Picker` to include `type` in the event payload for `onChange`
- `sandstone/Scroller` and `sandstone/VirtualList` to handle focus properly via page up at the first page and page down at the last page
- `sandstone/WizardPanels` to restore focus properly after a transition
## [2.5.10] - 2023-04-13
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to handle focus properly via page up at the first page and page down at the last page
## [2.6.3] - 2023-03-17
### Added
- `sandstone/Button` and `sandstone/Panels.Header` prop `shadowed` to add shadow to text and buttons
- `sandstone/Icon` supported icon list, adding a new icon `wowcast`
## [2.5.9] - 2023-03-16
### Added
- `sandstone/Button` and `sandstone/Panels.Header` prop `shadowed` to add shadow to text and buttons
- `sandstone/Icon` supported icon list, adding a new icon `wowcast`
## [2.6.2] - 2023-03-09
### Added
- `sandstone/Button` prop `roundBorder`, to make both sides of button fully rounded
### Fixed
- `sandstone/DayPicker` to handle number typed `selected` prop properly in es-ES locale
## [2.6.1] - 2023-02-03
### Deprecated
- `sandstone/Input.InputPopupBase` prop `value`, to be removed in 3.0.0. Use `defaultValue` instead.
### Added
- `sandstone/ActionGuide` prop `buttonAriaLabel` and `sandstone/MediaControls` prop `actionGuideButtonAriaLabel` to override aria-label of `ActionGuide` button
- `sandstone/Icon` supported icon list, adding new icons `keymouse`, `keymousedis`, `camera`, `cameradis`, `gamepad`, and `gamepaddis`
- `sandstone/Input.InputPopupBase` prop `defaultValue` to provide the initial value
### Changed
- `sandstone/ActionGuide` to replace `Icon` with `Button`
- `sandstone/VideoPlayer` to not expand video player using key down via 5way
- `sandstone/Scroller` and `sandstone/VirtualList` scroll speed and hover area when `hoverToScroll` is `true` to match GUI
### Fixed
- `sandstone/Input` to read out properly after closing it in a `sandstone/PopupTabLayout`
- `sandstone/MediaPlayer.MediaControls` to disable buttons when hidden
- `sandstone/MediaPlayer.MediaControls` to show round buttons correctly in high-contrast mode
- `sandstone/TabLayout` to not cropped and apply orientation properly when `orientation` prop is vertical
## [2.5.8] - 2023-01-31
### Fixed
- `sandstone/MediaPlayer.MediaControls` to show round buttons correctly in high-contrast mode
## [2.5.7] - 2023-01-03
### Changed
- `sandstone/Scroller` and `sandstone/VirtualList` scroll speed and hover area when `hoverToScroll` is `true` to match GUI
### Fixed
- `sandstone/MediaPlayer.MediaControls` to disable buttons when hidden
- `sandstone/Scroller` to not stop scrolling by hover unexpectedly when `hoverToScroll` is `true`
## [2.0.13] - 2022-12-23
### Fixed
- `sandstone/MediaPlayer.MediaControls` to disable buttons when hidden
## [2.5.6] - 2022-12-13
### Added
- `sandstone/ActionGuide` prop `buttonAriaLabel` and `sandstone/MediaControls` prop `actionGuideButtonAriaLabel` to override aria-label of `ActionGuide` button
- `sandstone/Icon` supported icon list, adding new icons `keymouse`, `keymousedis`, `camera`, `cameradis`, `gamepad`, and `gamepaddis`
### Changed
- `sandstone/ActionGuide` to replace `Icon` with `Button`
- `sandstone/VideoPlayer` to not expand video player using key down via 5way
## [2.0.12] - 2022-12-13
### Added
- `sandstone/ActionGuide` prop `buttonAriaLabel` and `sandstone/MediaControls` prop `actionGuideButtonAriaLabel` to override aria-label of `ActionGuide` button
### Changed
- `sandstone/ActionGuide` to replace `Icon` with `Button`
- `sandstone/VideoPlayer` to not expand video player using key down via 5way
## [2.6.0] - 2022-12-05
### Removed
- `@sand-inputfield-focus-text-color-rgb`, `@sand-picker-joined-fingernail-border-color`, `@sand-progress-buffer-color`, and `--sand-progress-buffer-color` as they are not used anymore
### Added
- `sandstone/FormCheckboxItem` CSS variable `--sand-formcheckboxitem-focus-text-color` for a customization of the focused text color
### Changed
- `--sand-checkbox-disabled-selected-color` to `--sand-checkbox-disabled-selected-text-color`
- `@sand-alert-overlay-checkbox-disabled-selected-color` to `@sand-alert-overlay-checkbox-disabled-selected-text-color`
### Fixed
- `sandstone/ImageItem` to have proper size when imported with `sandstone/Dropdown` or `sandstone/VirtualList` in the same file
## [2.0.11] - 2022-10-13
### Fixed
- `sandstone/MediaPlayer.MediaControls` to focus properly when pressing up key from buttons after holding left or right keys
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll properly by hover when scrollbar is hidden or `dataSize` is changed
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll properly by hover when `hoverToScroll` is `true` and `scrollMode` is `translate`
## [2.5.5] - 2022-10-07
### Fixed
- `sandstone/MediaPlayer.MediaControls` to focus properly when pressing up key from buttons after holding left or right keys
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll properly by hover when scrollbar is hidden or `dataSize` is changed
## [2.5.4] - 2022-09-23
### Fixed
- `sandstone/Scroller` to not show the focus effect of the body in pointer mode when `focusableScrollbar` prop is `byEnter`
- `sandstone/Slider` tooltip arrow to show properly
- `sandstone/Input` text color for number type cell when disabled to match GUI
## [2.5.3] - 2022-08-30
### Added
- `sandstone/Icon` supported icon list, adding a new icon `musicsrc`
### Fixed
- `sandstone/VideoPlayer` to not seek infinitely when pointer moves while holding left or right key
## [2.0.10] - 2022-08-30
### Added
- `sandstone/Icon` supported icon list, adding a new icon `r2rappcall`
- `sandstone/Icon` supported icon list, adding a new icon `musicsrc`
### Changed
- `sandstone/TabLayout` to eliminate the horizontal maximum number of tabs
### Fixed
- `sandstone/VideoPlayer` to not seek infinitely when pointer moves while holding left or right key
## [2.5.2] - 2022-08-17
No significant changes.
## [2.5.1] - 2022-08-03
### Added
- `sandstone/Icon` supported icon list, adding a new icon `r2rappcall`
### Fixed
- `sandstone/FixedPopupPanels` and `sandstone/PopupTabLayout` to restore scroll position when going back to the previous panel by left key
- `sandstone/Panels.Panel` to restore focus properly when it has `sandstone/Scroller` with `focusableScrollbar`
## [2.5.0] - 2022-07-19
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll properly by hover when `hoverToScroll` is `true` and `scrollMode` is `translate`
## [2.5.0-rc.2] - 2022-07-06
### Fixed
- `sandstone/Alert` to show `sandstone/ProgressBar` color properly
- `sandstone/FixedPopupPanels`, `sandstone/PopupTabLayout`, and `sandstone/TabLayout` to move caret in InputField with left and right keys
- `sandstone/WizardPanels` to provide `stopPropagation` method in `onBack` event payload
## [2.5.0-rc.1] - 2022-06-23
### Added
- `sandstone/Scroller` read out feature to support A11y when `editable` is given
### Changed
- `sandstone/Scroller` scrollbar thumb to read out "press ok button to read text" additionally when `focusableScrollbar` prop is `byEnter`
- `sandstone/Scroller` scrollbar thumb to read out 'leftmost', 'rightmost', 'topmost', or 'downmost' when reaching the end of the scroll
- `sandstone/Scroller` to select item by long press when `editable` is given
- `sandstone/Picker` and `sandstone/RangePicker` to read out `title`
### Fixed
- `sandstone/Scroller` to position the focused item into scroller view
## [2.5.0-beta.1] - 2022-05-31
### Added
- `sandstone/Panels.Header` and `sandstone/WizardPanels` prop `noSubtitle` to hide subtitle area
- `sandstone/Popup`, `sandstone/PopupTabLayout`, `sandstone/FixedPopupPanels`, and `sandstone/FlexiblePopupPanels` to add `detail` property containing `inputType` in `onClose` event payload
### Changed
- `sandstone/TabLayout` to eliminate the horizontal maximum number of tabs
- `sandstone/Input` background color for number type cell, `sandstone/Picker` indicator color when joined, and `sandstone/ProgressBar` highlight color are updated for better visibility of `light` skin
### Fixed
- `sandstone/ContextualPopupDecorator` to update the position of `ContextualPopup` properly when repositioned in open
- `sandstone/FixedPopupPanels.Panel` body to be filled vertically to place the last children as intended
- `sandstone/Scroller` to focus scroll thumb initially when it is used in Panels
- `sandstone/Scroller` thresholds for swapping items by pointer when `editable` is given
- `sandstone/Scroller` to support RTL locales when `editable` is given
- `sandstone/Scroller` to scroll properly by wheel when `editable` is given
- `sandstone/TimePicker` to forward `onComplete` event in RTL countries that do not display meridiem
## [2.0.9] - 2022-05-19
### Fixed
- `sandstone/TimePicker` to forward `onComplete` event in RTL countries that do not display meridiem
## [2.5.0-alpha.2] - 2022-05-09
### Added
- `sandstone/Alert` and `sandstone/Input` support for portrait mode
- `sandstone/Icon` supported icon list, adding a new icon `wallpaper`
- `sandstone/Scroller` prop `editable` to enable editing items in the scroller
### Changed
- `sandstone/Panels.Header` and `sandstone/RadioItem` to use `onClick` instead of `onTap` for touch support
## [2.0.8] - 2022-04-25
### Added
- `sandstone/Alert` and `sandstone/Input` support for portrait mode
- `sandstone/Icon` supported icon list, adding a new icon `wallpaper`
- `sandstone/VideoPlayer` props `backButtonAriaLabel` and `onBack` to provide a way to exit video player via touch
### Changed
- `sandstone/Panels.Header` and `sandstone/RadioItem` to use `onClick` instead of `onTap` for touch support
- `sandstone/DatePicker` and `sandstone/TimePicker` to not show press effect via touch input
- `sandstone/Scroller` and `sandstone/VirtualList` to show overscroll effect when flicking
### Fixed
- `sandstone/Picker` horizontal joined behavior going to the next item by touch
## [2.5.0-alpha.1] - 2022-04-15
- Update dependencies including React 18.0.0
### Changed
- `sandstone/DatePicker` and `sandstone/TimePicker` to not show press effect on touch input
- `sandstone/ProgressBar` radial colors and `sandstone/Scroller` colors to match with `sandstone/ProgressBar`
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to focus the topmost element after scroll in pointer mode
## [2.1.4] - 2022-03-24
### Added
- `sandstone/Icon` public class name `icon`
- `sandstone/Scroller` and `sandstone/VirtualList` prop `data-webos-voice-focused`, `data-webos-voice-disabled`, and `data-webos-voice-group-label`
### Fixed
- `sandstone/WizardPanels` to provide a way to prevent focusing on Panel again by allowing preventDefault when `onTransition` and `onWillTransition`
## [2.0.7] - 2022-03-24
### Fixed
- `sandstone/WizardPanels` to provide a way to prevent focusing on Panel again by allowing preventDefault when `onTransition` and `onWillTransition`
## [2.1.3] - 2022-03-07
- Updated to use `forwardCustom` and add `type` when forwarding custom events
### Added
- `sandstone/Picker` and `sandstone/RangePicker` prop `changedBy` to provide a way to control with left and right keys in horizontal joined Picker
- `sandstone/VideoPlayer` prop `backButtonAriaLabel`
- `sandstone/VideoPlayer` prop `onBack` to provide a way to exit video player via touch
### Changed
- `sandstone/Scroller` and `sandstone/VirtualList` to show overscroll effect when flicking
### Fixed
- `sandstone/Alert` layout for overlay type when screen width is narrow
- `sandstone/BodyText` font-size for size `small` and RTL locale
- `sandstone/Input.InputField` size 'small' line-height to center text vertically
- `sandstone/Input` to show title and keypad properly when `type` is `number` and screen width is narrow
- `sandstone/Picker` horizontal joined behavior going to the next item by touch
- `sandstone/Scroller` to scroll correctly on Android Chrome 85 or higher in RTL locales
- `sandstone/VirtualList` to scroll properly by hover after changing `dataSize` when `hoverToScroll` is `true`
## [2.0.6] - 2022-02-10
### Fixed
- `sandstone/VirtualList` to scroll properly by hover after changing `dataSize` when `hoverToScroll` is `true`
## [2.1.2] - 2021-12-22
- Fixed samples build issue
## [2.1.1] - 2021-12-22
### Added
- `sandstone/VideoPlayer` props `onWillFastForward`, `onWillJumpBackward`, `onWillJumpForward`, `onWillPause`, `onWillPlay`, and `onWillRewind`
### Fixed
- `sandstone/Button` to have centered icon on RTL locale
- `sandstone/VideoPlayer` to handle media related callbacks properly
- `sandstone/FormCheckboxItem` to show correct color for the focused disabled checkbox
## [2.0.5] - 2021-12-15
### Fixed
- `sandstone/Scroller` and `sandstone/VirtualList` to focus the topmost element after scroll by voice control in pointer mode
## [2.1.0] - 2021-11-30
- Support color customization
## [2.0.4] - 2021-11-01
### Added
- `sandstone/Icon` supported icon list, adding new icons `bluetooth`, `moodmode`, and `changepassword`
### Fixed
- `sandstone` to select correct font when font-weight changes in some Indian locales
## [2.0.3] - 2021-10-21
### Fixed
- `sandstone` to support India region font correctly
- `sandstone/TimePicker` to apply disabled color to the separator
## [2.0.2] - 2021-10-07
### Added
- `sandstone/Icon` supported icon list, adding a new icon `spanner`
### Changed
- `sandstone/ProgressBar` bar color for `sandstone/Alert`
### Fixed
- `sandstone/VirtualList` to not move focus to an unexpected item when 5-way directional key hold
## [2.0.1] - 2021-09-28
### Fixed
- `samples/sampler` not to fail in sampler build
## [2.0.0] - 2021-09-28
### Fixed
- `sandstone/DatePicker` and `sandstone/TimePikcer`abnormal animation
- `sandstone/Panels` to perform transition without delay when wheeling
## [2.0.0-rc.9] - 2021-09-13
### Changed
- `sandstone/DatePicker` and `sandstone/TimePicker` styling to match updated GUI
### Fixed
- `sandstone/VirtualList` to not focus the item again if focus moved out of the list via 5way when `snapToCenter`
## [2.0.0-rc.8] - 2021-08-31
### Fixed
- `sandstone/Dropdown` to restore focus within the list when moving mouse after clicking dropdown button
- `sandstone/Scroller` to move focus via up/down keys from scroll thumb when the content is short but the scrollbar is visible
- `sandstone/TimePicker` abnormal minute animation in some locales
- `sandstone/WizardPanels` to not read out `undefined` when there is no `subtitle` prop
## [2.0.0-rc.7] - 2021-08-09
### Fixed
- `sandstone/Item` to marquee properly when `slotAfter` or `slotBefore` changed
## [2.0.0-rc.6] - 2021-08-03
### Added
- `sandstone/Input` type `tel` and `passwordtel`
- `sandstone/Slider` prop `noWheel` to disable wheel event handler
### Fixed
- `sandstone/ContextualPopupDecorator` to focus elements in `ContextualPopup` when `spotlightRestrict` is `self-first` via 5way
- `sandstone/WizardPanels` to prevent re-rendering of previous panel
## [2.0.0-rc.5] - 2021-07-22
### Added
- `sandstone/DatePicker` and `sandstone/TimePicker` prop `noLabel` to hide label
- `sandstone/ImageItem` public classname `imageIcon`
- `sandstone/Slider` prop `wheelInterval` to throttle the wheel input
### Fixed
- `sandstone/FixedPopupPanels` and `sandstone/PopupTabLayout` to not go back to the previous panel by left key on popup opened inside
- `sandstone/MediaPlayer` to work trick play via key
- `sandstone/Scroller` and `sandstone/VirtualList` to show scroll animation properly with 5-way directional keys
- `sandstone/Scroller` to not focus the body at the initial rendering when `focusableScrollbar` prop is `byEnter`
## [2.0.0-rc.4] - 2021-07-08
### Fixed
- `sandstone/WizardPanels` to revert 2.0.0-rc.3 fix that prevent re-rendering
## [2.0.0-rc.3] - 2021-07-02
### Added
- `sandstone/Input` prop `inputFieldSpotlightId` to set `spotlightId` of `InputField`
- `sandstone/Input` prop `noSubmitButton` to omit submit button of number key pad
### Changed
- `sandstone/Slider` to expand hover area
### Fixed
- `sandstone/Picker` value to not marquee when changing `title`
- `sandstone/Popup` to have proper focus when opening with `noAnimation` is `true`
- `sandstone/Scroller` and `sandstone/VirtualList` to scroll by hover when scrollbar is hidden
- `sandstone/Scroller` and `sandstone/VirtualList` to focus elements at scroll boundaries when `hoverToScroll` is `true`
- `sandstone/VideoPlayer` to handle decimal playback rate
- `sandstone/VirtualList` to scroll properly when `snapToCenter`
- `sandstone/WizardPanels` to prevent re-rendering of previous panel
## [2.0.0-rc.2] - 2021-07-01
### Fixed
- `sandstone/Popup` to revert 2.0.0-rc.1 fix that having proper focus when `noAnimation`
## [2.0.0-rc.1] - 2021-06-18
### Added
- `sandstone/Picker` props `reverse` and `type` to support for number list
- `sandstone/Picker` and `sandstone/RangePicker` public class names `title` and `inlineTitle`
- `sandstone/Scroller` and `sandstone/VirtualList` prop `hoverToScroll` to scroll by hover
- `sandstone/VirtualList` prop `snapToCenter`
### Changed
- Shadow effect to using box-shadow instead of drop-shadow for performance on embedded environment
- `sandstone/FixedPopupPanels` and `sandstone/PopupTabLayout` to disable left key handler to go to the previous panel in RTL locales
- `sandstone/MediaPlayer.MediaControls` to show more components when a user flicks on action guide
- `sandstone/Scroller` and `sandstone/VirtualList` overscroll effect style to match latest designs
- `sandstone/Slider` to interact by wheel
### Fixed
- `sandstone/FixedPopupPanels` to keep focus inside of popup when pressing 5-way after click
- `sandstone/InputField` cursor not to jump unexpectedly when mouse down
- `sandstone/MediaPlayer` to show `MediaControls` via wheel properly when isomorphic build
- `sandstone/Panels.Header` to not overlap subtitle and children when header type is `mini`
- `sandstone/Popup` to have proper focus when opening with `noAnimation` is `true`
- `sandstone/PopupTabLayout` to move focus via 5-way left in the header
- `sandstone/Scroller` to scroll correctly on Chrome 85 or higher in RTL locales via 5way
## [1.4.9] - 2021-05-26
### Added
- `sandstone/Input` type `tel` and `passwordtel`
## [2.0.0-beta.1] - 2021-05-21
- Enhanced touch support
### Added
- `sandstone/FixedPopupPanels` and `sandstone/PopupTabLayout` left key handler to go to the previous panel
- `sandstone/Input` a back button and props `backButtonAriaLabel` and `noBackButton`
- `sandstone/Input` and `sandstone/Input.InputPopup` `url` to prop `type`
- `sandstone/Picker` and `sandstone/RangePicker` props `title` and `inlineTitle`
- `sandstone/Slider` prop `keyFrequency` to control the accelerating speed when key hold
### Changed
- `sandstone/Panels.Header` to always show back button
- `sandstone/PopupTabLayout` back key behavior to match the latest UX
- `sandstone/PopupTabLayout` to collapse its tab only when a user enters a menu
- `sandstone/Scroller` focus rule to match latest UX when `focusableScrollbar` prop is `byEnter`
- `sandstone/Scroller` and `sandstone/VirtualList` to hide the scrollbar after N seconds
- `sandstone/WizardPanels.Panel` `nextButton` and `prevButton` to show labels separately to match latest designs
### Fixed
- `sandstone/FormCheckboxItem` to show correct color for `slotBefore` icon in disabled state when focused
- `sandstone/ImageItem` to resize the image properly
- `sandstone/Input` button label when default value is `0`
- `sandstone/Panels.Header` to remeasure marquee metrics when the size of slots changed
- `sandstone/Scroller` and `sandstone/VirtualList` to activate voice control intent when only scrollable
- `sandstone/Scroller` and `sandstone/VirtualList` to move focus properly via page key
- `sandstone/VideoPlayer` to show the knob when mediaSlider gets focused with 5-way
- horizontal `sandstone/VirtualList` to align items well when navigating with 5-way
- `sandstone/WizardPanels` to not show focus effect on the wrong element in `footer`
## [1.4.8] - 2021-05-06
### Fixed
- `sandstone/Panels.Header` to remeasure marquee metrics when the size of slots changed
## [2.0.0-alpha.3] - 2021-03-31
### Added
- `sandstone/Dropdown` number type `width` prop
- `sandstone/Item` public class names `itemContent`, `content`, and `label`
- `sandstone/Scroller` prop `scrollbarTrackCss` to customize scroll track and thumb style
### Fixed
- `sandstone/Dropdown` to not show console error after selecting item
- `sandstone/RangePicker` to update label when value is out of range
- `sandstone/VirtualList` to not block key down events after panel transition
## [2.0.0-alpha.2] - 2021-03-26
- Update Enact dependency
## [1.4.7] - 2021-03-03
### Added
- `sandstone/Item` public class names `itemContent`, `content`, and `label`
- `sandstone/Scroller` prop `scrollbarTrackCss` to customize scroll track and thumb style
## [2.0.0-alpha.1] - 2021-02-24
- The framework was updated to support React 17.0.1
### Added
- `sandstone/ThemeDecorator` config `rootId` to specify React DOM tree root for global event handlers
## [1.5.0] - 2021-02-09
### Added
- `sandstone/Item` prop `data-webos-voice-labels` when `label` is used
### Fixed
- `sandstone/Alert` to read out properly after closing it in a `sandstone/PopupTabLayout`
- `sandstone/FlexiblePopupPanels` padding in RTL locales
- `sandstone/Heading` `font-style` to use oblique font instead of fake `italic`
- `sandstone/Input` to not have initial focus with pointer when `type` prop is `'number'` or `'passwordnumber'`
- `sandstone/Panel` to not reset scroll position by events from others
- `sandstone/Panels.Header` to not show back button in the first panel
- `sandstone/VideoPlayer.Video` to not start a new play before another one completes
## [1.4.6] - 2021-01-29
### Fixed
- `sandstone/ContextualPopupDecorator` to update `ContextualPopup` position properly in RTL locales
## [1.4.5] - 2021-01-05
### Fixed
- `sandstone/Dropdown` title `font-style` to `normal` where a locale's fonts cannot support italic
## [1.4.4] - 2020-11-06
### Fixed
- `sandstone/ThemeDecorator` font style in non-latin locales
- `sandstone/TimePicker` to change its value with up/down key when the focus changed by enter key
## [1.4.3] - 2020-10-30
### Changed
- `sandstone/Scroller` and `sandstone/VirtualList` scrollbar to always show
### Fixed
- `sandstone/Heading` `font-style` to `normal` where a locale's fonts cannot support italic
## [1.4.2] - 2020-10-26
### Fixed
- Cambodian(km) language to be classified as a tall-glyph language
- `sandstone/Item` line-height to support tall-glyph language
## [1.4.1] - 2020-10-20
### Fixed
- `sandstone/WizardPanels` to read `steps` when neither prop `noSteps` nor `aria-label` is present
## [1.4.0] - 2020-10-16
### Added
- `sandstone/TabLayout.Tab` prop `onTabClick` to handle `onClick` event on it
### Fixed
- `sandstone/Input` to match latest designs
- `sandstone/TooltipDecorator` to marquee when `tooltipReleative` prop is true
- `sandstone/VirtualList` to not show overscroll effect when 5-way key is pressed after scrolling to the bottom by wheel
- `sandstone/WizardPanels` to read `steps` properly with `noSteps` and `aria-label` props
## [1.3.2] - 2020-09-25
### Changed
- `sandstone/WizardPanels` to read out the content of customized `nextButton` and `prevButton`
### Fixed
- `sandstone/FlexiblePopupPanels` and `sandstone/PopupTabLayout` to match latest designs
- `sandstone/Picker` to move focus on increase or decrease button properly via 5-way
## [1.3.1] - 2020-09-17
### Changed
- `sandstone/Alert` background color for fullscreen type
- `sandstone/Icon` supported icon list, adding a new icon
- `sandstone/Icon` and `sandstone/Switch` size to not enlarge when large text mode
- `sandstone/Scroller` focused body color when `focusableScrollbar` prop is `byEnter`
### Fixed
- `sandstone/TabLayout` to not handle key events from other popup components
## [1.3.0] - 2020-09-14
### Added
- `sandstone/DatePicker` and `sandstone/TimePicker` prop `onComplete` to handle enter key from the last picker
### Changed
- `sandstone/RangePicker` to read out properly when Spotlight is on the next or previous button
- `sandstone/TooltipDecorator` not to read out audio guidance when showing
- `sandstone/WizardPanels` footer to lower position
### Fixed
- `sandstone/DatePicker` and `sandstone/TimePicker` to focus the next picker with enter key
- `sandstone/DatePicker` and `sandstone/TimePicker` to show arrows when normal
- `sandstone/Scroller` to not restrict focus movement with 5-way directional keys when `focusableScrollbar` prop is `byEnter` and there is no scrollbar
## [1.2.1] - 2020-09-03
### Changed
- Primary background color to black
### Fixed
- `sandstone/WizardPanels` to revert 1.2.0 fix that render `Panel` contents within the usual render flow
## [1.2.0] - 2020-09-01
### Added
- `sandstone/FlexiblePopupPanels.Panel` `size` property to allow the selection between "auto" sized, "small", and "large" panel presets
### Changed
- `sandstone/Scroller` scrollbar thumb to prevent losing focus with 5-way directional keys when `focusableScrollbar` prop is `byEnter`
- `sandstone/Scroller` and `sandstone/VirtualList` scrollbar color and transparency
### Fixed
- `sandstone/FixedPopupPanels`, `sandstone/FlexiblePopupPanels` and `sandstone/PopupTabLayout` to match latest designs
- `sandstone/Input` number pad layout in right-to-left locales for both overlay and fullscreen `Input`
- `sandstone/PopupTabLayout` and `sandstone/TabLayout` to visibly change focus only once when focusing the tabs via 5-way
- `sandstone/TabLayout` to properly change focus when changing `index` programmatically
- `sandstone/Tooltip` arrow shape
- `sandstone/WizardPanels` to render `Panel` contents within the usual render flow allowing more predictable use of lifecycle methods
## [1.1.4] - 2020-08-24
### Fixed
- `sandstone/Dropdown` to match latest designs
- `sandstone/Input` number pad layout in right-to-left locales
- `sandstone/Item` style to match latest designs
- `sandstone/Panels.Header` style to match latest designs
- `sandstone/TabLayout` to not lose focus when changing `index` programmatically
## [1.1.3] - 2020-08-17
### Fixed
- `sandstone/Button` alignment for small icon-only buttons
- `sandstone/Panels` animation after reversing direction
- `sandstone/TooltipDecorator` to be positioned correctly over complex components
- `sandstone/WizardPanels` to favor other header components when using 5-way within the header
- `sandstone/WizardPanels` to focus a spottable component within the first `Panel` on mount
- `sandstone/WizardPanel` `noAnimation` autofocus
- Sinhala(si), Thai(th), Vietnamese(vi) languages to be classified as a tall-glyph language, with others like Arabic and Japanese to no longer be classified as tall-glyph. These languages will have new line-height settings, causing their layouts to shift slightly, which should ultimately be closer to the intended designs.
## [1.1.2] - 2020-08-10
### Fixed
- `sandstone/Button` style to match latest designs
- `sandstone/Panels` to allow key events after being unmounted
- `sandstone/Panels.Panel` to return to last focused element when reentering the `Panel`
- `sandstone/TabLayout` to correctly restore focus to the selected tab after expanding
- `sandstone/VideoPlayer.Video` to reuse video DOM node when changing `source`
## [1.1.1] - 2020-08-05
### Fixed
- `sandstone/Button`, `sandstone/InputField`, `sandstone/Item` and `sandstone/Picker` `font-weight`
- `sandstone/Button` background color opacity when opaque and disabled
- `sandstone/ContextualPopupDecorator` to include the popup in its accessibility tree
- `sandstone/FixedPopupPanels` and `sandstone/FlexiblePopupPanels` to correctly set focus after closing
- `sandstone/Panels` to prevent key events during view transitions
- `sandstone/Slider` to read out `value` with the hint string only once when focused
## [1.1.0] - 2020-07-29
### Added
- `sandstone/PopupTabLayout` and `sandstone/TabLayout` support for animated `Sprite` icons
- `sandstone/Scroller` prop `aria-label` to be read out instead of a body text
- `sandstone/Sprite` component for animating images
- `sandstone/TabLayout.Tab` prop `tabKey` to specify a unique key when the `title` and `icon` combination is not unique
- `sandstone/VideoPlayer` prop `onToggleMore` to notify consumers when more components are shown
### Fixed
- `sandstone/Checkbox` and `sandstone/Switch` to support `aria-disabled`
- `sandstone/DayPicker` to not read out current index and total numbers
- `sandstone/Dropdown` button margin with title
- `sandstone/Dropdown` to delegate voice props to the dropdown button
- `sandstone/FixedPopupPanels` and `sandstone/FlexiblePopupPanels` to avoid duplicate 5-way navigation when using `sandstone/Picker` or `sandstone/Input`
- `sandstone/FlexiblePopupPanels.Panel` to favor auto-focusing the content over the navigation buttons
- `sandstone/ImageItem` to support `aria-disabled`
- `sandstone/Input.InputField` to support `aria-disabled`
- `sandstone/Item` font-size for large text mode
- `sandstone/Item` to support RTL text
- `sandstone/MediaPlayer` to pause spotlight during animations
- `sandstone/Panels` animation direction for locales that use right-to-left reading order
- `sandstone/ProgressButton` icon size
- `sandstone/Scroller` and `sandstone/VirtualList` scrollbar thumb shape to not clipped
- `sandstone/Scroller` not to read out thumb audio guidance when focusing on the body
- `sandstone/TabGroup` to read out contents without button `role`
- `sandstone/TabLayout` to properly support scrolling the tabs
- `sandstone/VideoPlayer` to clear previously read string by calling announce with the `clear` property
- `sandstone/VideoPlayer` to read out action guide string after video title
- `sandstone/VirtualList` to not lose focus when entering from outside after scrolling via 5-way
## [1.0.1] - 2020-07-20
### Fixed
- `sandstone/ImageItem` to re-render properly when `data-index` prop is the same
- `sandstone/Scroller` to set its height correctly
- `sandstone/Scroller` and `sandstone/VirtualList` overscroll style to match latest designs
- `sandstone/Scroller` and `sandstone/VirtualList` to properly support `spotlightDisabled` prop
- `sandstone/VirtualList` to preserve focus in panels
## [1.0.0] - 2020-07-13
### Changed
- `sandstone/Icon` supported icon list, adding new icons
### Fixed
- `sandstone/ActionGuide` style to match latest designs
- `sandstone/Button` to animate when focused and pressed
- `sandstone/ContextualMenu` style to match latest designs
- `sandstone/DayPicker` to pass `disabled` to each child instead of applying to its container
- `sandstone/DropDown` title color
- `sandstone/FixedPopupPanels` and `sandstone/PopupTabLayout` to change `Panel` height when the contents change
- `sandstone/FixedPopupPanels`, `sandstone/Panels`, and `sandstone/PopupTabLayout` to avoid skipping panel animations when under system load
- `sandstone/FlexiblePopupPanels` navigation buttons to not be clipped when focused
- `sandstone/ImageItem` to center the label in vertical orientation when `centered` prop is true
- `sandstone/Input` text selection color
- `sandstone/Input` to close the popup with the enter key only when the VKB is activated
- `sandstone/Input` to properly read out number values
- `sandstone/MediaPlayer.MediaControls` animation when more components are rendered
- `sandstone/MediaPlayer.MediaSlider` style to match latest designs
- `sandstone/Panels.Header` spacing between title and subtitle
- `sandstone/Popup` to correctly emit the `onClose` event when focus attempts to leave the popup
- `sandstone/PopupTabLayout` padding so it's the same distance all the way around the tab buttons
- `sandstone/PopupTabLayout` and `sandstone/TabLayout` to not lose focus from tabs with 5-way
- `sandstone/Scroller` to not lose focus from scrollbar when re-rendered
- `sandstone/Slider` to readout `value` when the knob is focused
- `sandstone/VirtualList` to not clip the shadow of the last item when `wrap` prop is true or `scrollMode` is translate
- `sandstone/WizardPanels` style when using `noSteps`
## [1.0.0-rc.4] - 2020-07-09
### Fixed
- `sandstone/TabLayout` layout in RTL locales
## [1.0.0-rc.3] - 2020-07-07
### Fixed
- `sandstone/FixedPopupPanels` to use an opaque background in high-contrast mode
- `sandstone/MediaControls` margins to correctly align in RTL
## [1.0.0-rc.2] - 2020-07-07
### Removed
- `sandstone` support for `data-spotlight-container-muted`
### Added
- `sandstone/Input` event `onBeforeChange`
### Changed
- `sandstone/PopupTabLayout.TabPanels` prop `noCloseButton` to be `false` by default
- `sandstone/TooltipDecorator` prop `tooltipWidth` and `sandstone/TooltipDecorator.Tooltip` prop `width` to support either an auto-scaled number of pixels or a string CSS measurement value
### Fixed
- `sandstone/Button` style to match latest designs
- `sandstone/Button` style when using small, icon-only buttons in non-latin locales
- `sandstone/Dropdown` to read out `aria-label` without `title` when `aria-label` prop exists
- `sandstone/Dropdown` to reveal its title when scrolling up by 5-way in a scroller
- `sandstone/FixedPopupPanels` to use a translucent background
- `sandstone/FlexiblePopupPanels` to retain focus on navigation buttons when used to change panels
- `sandstone/ImageItem` to pass `role` and `aria-checked` when `showSelection` prop exists
- `sandstone/Input` to marquee the invalid tooltip
- `sandstone/Panels.Panel` to read out the title and subtitle except when used in `sandstone/WizardPanels`
- `sandstone/Picker` values position in RTL
- `sandstone/Popup` to respect paused spotlight
- `sandstone/PopupTabLayout` style to match latest designs
- `sandstone/Scroller` to stop the propagation of keydown events from a scroller thumb when it scrolls
- `sandstone/Scroller` vertical padding to prevent overlapping contained components
- `sandstone/Spinner` style to match latest designs
- `sandstone/TabLayout` to disable the collapsed list icon button when all tabs are disabled
- `sandstone/TabLayout` and `sandstone/PopupTabLayout` transition performance
- `sandstone/TimePicker` spacing between pickers in RTL
- `sandstone/WizardPanels` to read out properly
## [1.0.0-rc.1] - 2020-06-29
### Removed
- `sandstone` focus animation
### Added
- `sandstone` high-contrast support
### Changed
- `sandstone/Input` prop `size` default value to small
### Fixed
- `sandstone/ActionGuide`, `sandstone/Alert`, `sandstone/Checkbox`, `sandstone/CheckboxItem`, and `sandstone/FormCheckboxItem`, `sandstone/Input`, `sandstone/MediaPlayer`, `sandstone/Picker`, and `sandstone/VideoPlayer` style to match latest designs
- `sandstone/Dropdown` margins to correctly align with other components
- `sandstone/FixedPopupPanels` and `sandstone/FlexiblePopupPanels` to allow clicking near, but outside, the Panels to dismiss them
- `sandstone/FixedPopupPanels` to not read out a title twice
- `sandstone/FlexiblePopupPanels` and `sandstone/PopupTabLayout` shadow effects
- `sandstone/Input` submit button positioning
- `sandstone/Item` to prevent unnecessary re-rendering
- `sandstone/PopupTabLayout` to read out properly
- `sandstone/Scroller` and `sandstone/VirtualList` to not show a scroll thumb when focus is moving without scrolling
- `sandstone/Tooltip` arrow rendering to eliminate a vertical gap
- `sandstone/WizardPanels` direction of buttons and transition in RTL locales
## [1.0.0-beta.8] - 2020-06-22
### Added
- `sandstone` LESS mixin `.sand-spotlight-focus-text-colors` to support focused font style
- `sandstone/ImageItem` prop `centered` to center the primary caption in vertical orientation
### Changed
- `sandstone` LESS mixins `.sand-spotlight-resting-colors` and `.sand-spotlight-focus-colors` to `.sand-spotlight-resting-bg-colors` and `.sand-spotlight-focus-bg-colors` respectively
- `sandstone/Button` to include a small top and bottom margin to avoid clipping the expanded focus state
- `sandstone/Dropdown` to prevent focus on the outer area
- `sandstone/Icon` supported icon list
- `sandstone/Input` `disabled` prop to not close an open input
- `sandstone/MediaControls` to show more components via wheel down
### Fixed
- `sandstone/Dropdown` to support readout placeholder string
- `sandstone/Button`, `sandstone/DatePicker`, `sandstone/FormCheckboxItem`, `sandstone/ImageItem`, `sandstone/Item`, and `sandstone/MediaOverlay` font style when focused
- `sandstone/Checkbox` to center the icon
- `sandstone/ContextualMenuDecorator` to match the latest style guide
- `sandstone/DatePicker` to read out 'day', 'month', or 'year' when it is focused or its value is changed
- `sandstone/Dropdown` to match the latest design
- `sandstone/Dropdown` to not expand the button activator when focused
- `sandstone/FixedPopupPanels` and `sandstone/FlexiblePopupPanels` to respect `spotlightRestrict`
- `sandstone/FixedPopupPanels` padding in RTL locales
- `sandstone/FormCheckboxItem` to not have a focusable inner part
- `sandstone/Input` to display the submit button when the number input field is used
- `sandstone/Input` to support accessibility features
- `sandstone/Item` style to match latest designs
- `sandstone/KeyGuide` to position on the right in RTL
- `sandstone/MediaOverlay` style to match latest designs
- `sandstone/Panels` to properly restore focus after a transition
- `sandstone/Popup` to correctly emit the `onClose` event when focus leaves the popup
- `sandstone/PopupTabLayout` to position on the left in RTL
- `sandstone/ProgressButton` to match the latest design
- `sandstone/Scroller` and `sandstone/VirtualList` to not show the scrollbar on every re-render
- `sandstone/Switch` and `sandstone/SwitchItem` accessibility read out
- `sandstone/TabLayout` to c