[12.0.0] - 2022-04-28
Added
- Added
ShortcutManager
, a new API for customizing keyboard shortcuts.
#8942 - Added support for right-to-left (RTL) languages, introducing a new configuration option:
layoutDirection
. #8760 - Added an Arabic translation. #9208
- Added a new configuration option:
fixedColumnsStart
.
#8760 - Added a new keyboard shortcut (<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Enter</kbd>) for filling the
selected range of cells with the value of the active cell.
#9366
- Added support for the <kbd>Home</kbd> and <kbd>End</kbd> keys inside cell editors, for moving the
cursor to the beginning or end of the text.
#9367
- Added support for the latest Node LTS version.
#9149
Changed
- Breaking change: Changed how
updateSettings()
handles data updates, to improve performance
and the consistency of user experience. Now, when provided with a new data object,
updateSettings()
updates the data without resetting any states.
#7263 - Breaking change (React, Angular, Vue 2, Vue 3): Updating your data through a component
property no longer resets your index mapper information and configuration options.
#7263
- Breaking change: Changed how
updatePlugin()
reacts to updateSettings()
calls, to improve
performance and the consistency of user experience. Now, calls to updateSettings()
update a
plugin's state only when the options object contains a configuration option that's relevant to
that particular plugin. #9021 - Breaking change: Changed the order of execution for two hooks: now,
beforeKeyDown
is
properly fired before afterDocumentKeyDown
.
#6236 - Breaking change: Changed how default keyboard shortcuts are defined, to improve keyboard
navigation consistency. Most of the shortcuts did not change and are now properly documented in
the
keyboard shortcuts
guide. However, some shortcuts that were not defined explicitly, and were not listed in the
documentation, don't work anymore (e.g., <kbd>Enter</kbd> opens a cell's editor, but
<kbd>Ctrl</kbd>+<kbd>Enter</kbd> doesn't). This change doesn't affect custom keyboard shortcuts.
#8942
- Breaking change: Split a cross-platform modifier key (<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>) into two
separate keys, to improve keyboard navigation consistency. Now, the <kbd>Cmd</kbd> key triggers
actions on macOS where the <kbd>Ctrl</kbd> key triggers actions on Windows. For example, on macOS,
<kbd>Ctrl</kbd>+<kbd>A</kbd> doesn't work anymore: <kbd>Cmd</kbd>+<kbd>A</kbd> is used
instead. #9369
- Breaking change: Changed the actions of the following
keyboard shortcuts,
to match the usual spreadsheet software behavior, and provide a more intuitive user experience:
<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>↑</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Shift</kbd> +
<kbd>↑</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>↓</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> +
<kbd>Shift</kbd>+<kbd>↓</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>←</kbd>,
<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>←</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> +
<kbd>→</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>→</kbd>, <kbd>Home</kbd>,
<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Home</kbd>, <kbd>End</kbd>, <kbd>Ctrl</kbd>/<kbd>Cmd</kbd> +
<kbd>End</kbd>, <kbd>Shift</kbd>+<kbd>Page Up</kbd>, and <kbd>Shift</kbd>+<kbd>Page
Down</kbd>. #9363
#9364
#9365
- Changed two scripts of the main Handsontable workspace (
./
), to speed up the build process: now,
the npm run build
and npm run test
scripts don't build or test the Handsontable examples
(./examples
). #9412 - Changed the version of the Moment.js dependency from 2.24.0 to 2.29.3, in reaction to a
recently-found Moment.js security vulnerability that did not directly affect Handsontable.
#9381
- Changed the version of the HyperFormula optional dependency from ^1.2.0 to ^2.0.0.
#9411
- Changed an internal property name, from
hot.view.wt
to hot.view._wt
, where hot
is the name
of your Handsontable instance. The intention of this change is to make it clear that Walkontable
(Handsontable's rendering engine) is not a part of Handsontable's public API.
#8760
Removed
- Breaking change: Removed the <kbd>Cmd</kbd>+<kbd>M</kbd> keyboard shortcut (used for cell
merging), as it conflicted with window minimizing on macOS. The <kbd>Ctrl</kbd>+<kbd>M</kbd>
keyboard shortcut works the same as before.
#9368
- Breaking change: Removed the <kbd>Shift</kbd>+<kbd>Page Up</kbd>/<kbd>Page Down</kbd>
keyboard shortcuts from the cell editing context.
#9401
- Dropped support for Internet Explorer 11 and Edge Legacy (the non-Chromium version of Edge).
Handsontable 11.x becomes the long-term support (LTS) version for Internet Explorer 11 and Edge
Legacy, until the end of 2023. #7026
- React: Removed the
enzyme
dependency from the React wrapper.
#9151
Fixed
- React, Angular, Vue 2, Vue 3: Fixed an issue where using
updateSettings()
caused problems for
state managers. #8372 - Fixed an issue where using
updateSettings()
caused hidden columns to reappear.
#7165 - Fixed an issue where using
updateSettings()
caused merged cells to unmerge.
#3315 - Fixed an issue where using
updateSettings()
caused the state of nested rows to reset.
#8838 - Fixed an issue where using
updateSettings()
caused problems with column sorting.
#7688 - React: Fixed an issue where using React's
setState()
within the afterFilter
hook broke
filtering. #7567 - Vue 2: Fixed an issue where repeatedly changing Handsontable's height through
updateSettings()
caused Handsontable to crash. #7546 - Vue 2: Fixed an issue where the
failed
validation status got erased when editing a new row.
#7541 - Fixed an issue where cell filtering did not use formula results.
#5455
- Fixed a wrong TypeScript definition in the
BasePlugin
class.
#9175 - Fixed an issue where the <kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Z</kbd> and
<kbd>Ctrl</kbd>/<kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>Z</kbd> keyboard shortcuts didn't behave
properly inside cell editors. #9367
- Fixed an issue where the dropdown menu contained unwanted rectangle elements.
#9240
- React, Vue 2, Vue 3: Fixed an issue with registering modules for the React, Vue 2, and Vue 3
wrappers, by adding an
"exports"
field to their package.json
files.
#9140
For more information on Handsontable 12.0.0, see: