React Data GridChangelog
See the full history of changes made to Handsontable in each major, minor, and patch release.
15.2.0
Released on March 19, 2025
For more information about this release see:
Added
- Added the Farsi translation. #11388 (opens new window)
- Added support for class names passed as an array for the numeric cell renderer. #11420 (opens new window)
- Updated the Italian translation for the new Context Menu labels. #11436 (opens new window)
- Updated the Serbian translation for the new Context Menu labels. #11437 (opens new window)
- Added the mobile cell handle CSS variables to the themes. #11479 (opens new window)
- Improved the execution flow of the Filters plugin and added two new methods (
importConditionsandexportConditions). #11488 (opens new window)
Changed
- Sped up the rendering performance for themes. #11443 (opens new window)
- Improved the table UI behavior after removing all rows and/or columns. #11477 (opens new window)
- Reverted the removal of
actionTypeclass field for UndoRedo actions. #11495 (opens new window)
Removed
- Removed the broken, unsupported and undocumented
rendererTemplateText Renderer option. #11424 (opens new window)
Fixed
- Fixed the default (fallback) date format for the Date editor. #11419 (opens new window)
- Fixed the Context Menu's items' state rendering. #11422 (opens new window)
- Corrected the checkbox visibility in the no-theme variant. #11427 (opens new window)
- Fixed problems with the cell content reading with
imeFastEditenabled. #11442 (opens new window) - Fixed
hasVerticalScrollandhasHorizontalScrollmethods. #11455 (opens new window) - Fixed the editor border radius on mobile devices. #11457 (opens new window)
- Fixed the wrong height of the first row. #11458 (opens new window)
- Fixed the single cell selection inside iframes. #11460 (opens new window)
- Fixed an issue with row header misalignment. #11465 (opens new window)
- Improved the Autocomplete/Dropdown Editor list behavior. #11469 (opens new window)
- Fixed a problem with horizontal scrollbar in the Autocomplete dropdown. #11473 (opens new window)
- Fixed the merged cells height for custom row heights. #11478 (opens new window)
- Fixed a problem with the Comments editor not flipping direction when overlapping the window's scrollbars. #11481 (opens new window)
- Fixed a problem with the focus trap during
Shift+Tabnavigation. #11483 (opens new window) - Fixed an issue with the Context Menu opening on Classic theme. #11486 (opens new window)
- Fixed a problem with
rowHeightswhen the provided value was lower than the default/minimal row height. #11487 (opens new window) - Fixed an issue with the data source modification for row values passed as strings. #11491 (opens new window)
- Fixed the conflicts between ColumnSorting and MultiColumnSorting plugins. #11492 (opens new window)
- Fixed copy, cut an paste actions on tables with a selection reaching outside of the rendered viewport. #11504 (opens new window)
15.1.0
Released on February 20, 2025
For more information about this release see:
Added
- Added the
TABandSHIFT + TABfunctionality to the Comments editor. #11345 (opens new window)
Changed
- Changed the approach to how the table is rendered by reusing the cell nodes. #11264 (opens new window)
- Updated Hyperformula to v3. #11373 (opens new window)
- Improved the performance of horizontal scrolling. #11412 (opens new window)
Removed
- Removed the
getComputedStylefunction from the type declaration file. #11421 (opens new window)
Fixed
- Fixed a bug where values passed to data-modifying hooks were not normalized. #11346 (opens new window)
- Fixed a problem where data population via autofill handler was broken for merged cells. #11291 (opens new window)
- Fixed a problem with a missing render call for the
minSpareRowsandminSpareColsoptions. #11292 (opens new window) - Fixed the undo/redo scrolling behavior after undoing the data deletion. #11297 (opens new window)
- Fixed the
Page Up/Page Downkeyboard shortcuts for the oversized rows. #11301 (opens new window) - Fixed a bug where the Undo/Redo action caused the wrong cells to be affected when triggered after filtering data. #11307 (opens new window)
- Fixed a bug where the selection was incorrectly expanded after closing the editor. #11311 (opens new window)
- Fixed a bug where the viewport was incorrectly scrolled after moving rows with the Nested Rows plugin enabled. #11312 (opens new window)
- Fixed dropdown-typed cells validation for custom editors. #11314 (opens new window)
- Fixed Undo/Redo for rows/columns with enabled min spare indexes. #11321 (opens new window)
- Fixed a problem with the table misalignment after changing the container size. #11324 (opens new window)
- Fixed a bug with an uncaught error being thrown after changing the theme while some of the editors were not fully initialized. #11325 (opens new window)
- Fixed a problem with a broken scroll on overlays when
batchwas used. #11328 (opens new window) - Fixed the date picker arrow icon positions for RTL, along with other minor RTL fixes. #11329 (opens new window)
- Fixed the Autofill handler styles for the new themes. #11330 (opens new window)
- Fixed a problem with an uncaught error being thrown after scrolling the viewport. #11341 (opens new window)
- Fixed a problem where calling
updateSettingswiththemeNameset to the current theme name would clear the theme from the table. #11343 (opens new window) - Fixed a problem where the
getCellsMetamethod returned improper results. #11350 (opens new window) - Fixed the row virtualization for Filter's "by value" component. #11351 (opens new window)
- Fixed a problem with the columns shifting after the render calls with the new themes being enabled. #11352 (opens new window)
- Fixed the cell editor width for the new themes. #11354 (opens new window)
- Disabled the "Clear column" option for read-only cells. #11355 (opens new window)
- Fixed a problem where autocomplete highlight was not rendered correctly in the new themes. #11364 (opens new window)
- Fixed a problem where the cell borders were not rendered correctly for fixed rows and columns with the new themes being enabled. #11369 (opens new window)
- Fixed the incorrect spacing between the checkboxes and their labels. #11377 (opens new window)
- Fixed a problem where the Nested Headers' header selection was not rendered properly for the new themes. #11381 (opens new window)
- Fixed a bug where the dropdown editor was not fully visible on fixed rows while the new themes were enabled. #11399 (opens new window)
- Fixed a problem where the initial styles of the context menu and dropdown menu were not properly assigned in the new themes. #11400 (opens new window)
- Fixed a misalignment of the Manual Row Move's "guide" in the new themes. #11401 (opens new window)
- Fixed a bug where the selection was not rendered correctly when selecting both merged and non-merged cells with the new themes being enabled. #11403 (opens new window)
- Fixed a bug where using the keyboard shortcuts to open the Context Menu would open it at a wrong position when the new themes were enabled. #11404 (opens new window)
- Fixed the CodeQL warnings by modifying potentially problematic code fragments. #11405 (opens new window)
- Fixed a bug where the date editor would not close after selecting a date on mobile devices. #11406 (opens new window)
- Fixed a problem with the header widths when using Nested Headers with the new themes enabled. #11410 (opens new window)
- Fixed the header text overlap in Nested Headers. #11413 (opens new window)
- Fixed a problem with the merged cells height calculation in the new themes. #11423 (opens new window)
- Fixed the copy/paste feature not working correctly in Chrome 133. #11428 (opens new window)
- Fixed a problem, where clicking on the Comments' editor element deselected the currently selected cells. #11446 (opens new window)
15.0.0
Released on December 16, 2024
For more information about this release see:
Added
- Added support for row and column virtualization of merged cells. #11162 (opens new window)
- Added missing typings for the language files. #11236 (opens new window)
- Added support for the new themes, including "main" and "horizon". #11144 (opens new window)
- React: Added
@handsontable/react-wrapperto the monorepo. #11212 (opens new window)
Changed
- Breaking change: Updated the production dependencies (replaced
pikadaywith@handsontable/pikaday, updatednumbroanddompurify) #10929 (opens new window) - Refactored the column stretching logic, moved it to a separate plugin and fixed bugs related to the columns widths misalignment. #11210 (opens new window)
- Updated the typing for dropdown and context menu options. #11237 (opens new window)
- Updated the monorepo to utilize Node 22. #11265 (opens new window)
Removed
- Breaking change: Removed check marks from the Context Menu's alignment submenu. #11278 (opens new window)
- Removed
aria-hiddenfrom TextEditor's and PasswordEditor'sTEXTAREAelements. #11218 (opens new window)
Fixed
- Fixed the Autocomplete and Dropdown editors' container size calculations. #11201 (opens new window)
- Fixed the focus management for the Dropdown Menu after
updateSettingscalls. #11205 (opens new window) - Fixed the broken column selection when the column was being moved with the Nested Headers plugin enabled. #11206 (opens new window)
- Fixed copying values when the Fast IME Edit option was enabled. #11243 (opens new window)
- Fixed an issue with exporting of the common lib in
package.json. #11247 (opens new window) - Fixed the checkbox switching in merged cells. #11252 (opens new window)
- Fixed a problem with the missing "name" attribute of the Focus Catcher. #11256 (opens new window)
- Fixed data deletion for the checkbox-typed cells. #11263 (opens new window)
- Fixed the horizontal scrolling for Nested Headers. #11269 (opens new window)
- Fixed a problem where the Filters' dropdown container did not match the dropdown content size. #11273 (opens new window)
- Fixed an error thrown when hiding already selected columns. #11277 (opens new window)
- Fixed the cell fast edit mode that did not work properly when a comment was displayed. #11280 (opens new window)
- Fixed an error for cases where the keyboard event was triggered with
keyset asundefined. #11281 (opens new window) - Fixed the input width calculation for the password-typed cells. #11283 (opens new window)
- Fixed the missing
sourceargument for thesetDataAtCellmethod. #11287 (opens new window) - Fixed the top overlay misalignment issue, visible after vertical scrollbar disappeared. #11289 (opens new window)
- React: Made the build scripts of
@handsontable/react-wrapperplace the TS type definitions in the configured directory. #11296 (opens new window)
14.6.1
Released on October 17, 2024
For more information about this release see:
Removed
- Removed
aria-hiddenfrom the TextEditor and PasswordEditor'sTEXTAREAelements. #11218 (opens new window)
14.6.0
Released on October 1, 2024
For more information about this release see:
Added
- Fix aria-label, aria-checked and menuitemcheckbox roles for the readOnly and alignment contextMenu items #11091 (opens new window)
- Extended the
beforeFilterhook with a second argument to allow correct Undo/Redo functionality. #11170 (opens new window) - Added even and odd class names to the TR elements. #11183 (opens new window)
- Added new API to retrieve visible, partially visible and rendered row and columns indexes. #11189 (opens new window)
Changed
- Make the focus visible for
selectcell type cells. #11160 (opens new window)
Removed
- Remove -ms fix from css #11055 (opens new window)
Fixed
- Fixed a bug that prevents copy valus from cell comments. #11103 (opens new window)
- Fixed submenu misalignment after horizontal scroll. #11106 (opens new window)
- Fixed rows misalign for cells that content produce heights with fractions. #11110 (opens new window)
- Fixed dropdown menu misalignment after opening with a keyboard shortcut. #11115 (opens new window)
- Fixed a bug where the data was saved in a wrong cell, when sorting a column with an open editor. #11129 (opens new window)
- Fixed copy/paste/cut issues when
outsideClickDeselectswas disabled #11139 (opens new window) - Fixed merged cells that break after adding a new row. #11145 (opens new window)
- Fixed F2 keyboard shortcut (enter into editing mode). #11151 (opens new window)
- Fixed context/dropdown menu column width calculations depending on the content. #11156 (opens new window)
- Updated TS typings for
selectCellmethod. #11161 (opens new window) - Fixed a problem with deleting content from a selection when it contained both
checkboxand non-checkbox-typed cells. #11182 (opens new window) - Fixed a problem where the Context Menu container wasn't reflecting the size of its contents. #11190 (opens new window)
- Fixed an issue connected with throwing an error triggered by some keyboard shortcuts when there was no selection #11195 (opens new window)
14.5.0
Released on July 30, 2024
For more information about this release see:
Added
- Added support for other keyboard layouts besides QWERTY (e.g. AZERTY). #11027 (opens new window)
- Added missing "this" typing for the ColumnSummary plugin. #11036 (opens new window)
- Added Undo/Redo logic for the ColumnSorting/ManualColumnSorting plugins. #11037 (opens new window)
- Added new option
headerClassName, which allows adding custom CSS classes to the column headers. #11076 (opens new window)
Changed
- Improved the precision of calculating the height and width of columns and rows. #11049 (opens new window)
- Improved the rendering performance. #11069 (opens new window)
Fixed
- Fixed Context.getShortcuts type. #10910 (opens new window)
- Improved performance of cell merging. #10995 (opens new window)
- Fixed a problem where clicking and dragging on cells in window-controlled scrolled instances would result in unpredictable behavior. #10996 (opens new window)
- Fixed a bug that prevented column sorting of the checkbox cell types. #11004 (opens new window)
- Fixed merged cells misalignment in overlays. #11007 (opens new window)
- Fixed selection expansion for merged cells. #11010 (opens new window)
- Fixed a problem where the table could go into an endless resize loop when one of the instance's parents was using
dvhvalues for sizing, and the table was not given any size itself. #11021 (opens new window) - Fixed a bug where the
afterSetCellMetawas unnecessarily triggered after clicking on the comments textarea element. #11033 (opens new window) - Fixed invalid cell states after data population that was canceled in the
beforeChangehook. #11035 (opens new window) - Fixed a problem with the Formulas plugin using wrong indexes when performing autofill. #11038 (opens new window)
- Fixed a problem where disabling
navigableHeadersbroke keyboard navigation in the first row if the option was previously enabled and used. #11043 (opens new window) - Fixed a problem where the dropdown menu would not close after tapping on the table cells on mobile browsers. #11044 (opens new window)
- Fixed the header selection with
nestedHeadersenabled not working on mobile devices. #11051 (opens new window)
14.4.0
Released on June 11, 2024
For more information on this release, see:
Added
- Extended the
manualRowResizeplugin with a method to retrieve the row height value from the last manual adjustment attempt. #10941 (opens new window) - Added an option to change the order of hook callbacks. #10970 (opens new window)
- Added new
dataDotNotationoption which, when set asfalseallows using object keys with dots. #10973 (opens new window)
Changed
- Improved editor behavior after dataset alterations. #10963 (opens new window)
- React: Synchronized the
rollupversion between the wrappers and updated therollupplugin dependencies. #10962 (opens new window)
Fixed
- Fixed unwanted table re-rendering for oversized rows/columns. #10912 (opens new window)
- Fixed
Ctrl/Cmd+Enterkeyboard shortcut for comments. #10920 (opens new window) - Fixed issue with rows and columns not unfreezing when headers are disabled. #10926 (opens new window)
- Fixed
imeFastEditoption being reset afterupdateSettingscall #10933 (opens new window) - Improved fast typing values between editors. #10947 (opens new window)
- Removed double borders for column headers. #10948 (opens new window)
- Fixed column width calculations with
stretchH: 'all'option. #10954 (opens new window) - Fixed missing column summary cell meta state after
updateSettingsmethod call. #10955 (opens new window) - Fixed sorting issue for the
timecolumn type. #10956 (opens new window) - Fixed data populate error with
correctFormatusage. #10957 (opens new window) - Fixed cell meta coordinates overwrite by
GhostTable. #10961 (opens new window) - Fixed
setDataAtRowProperror when saving data into a trimmed-out column. #10964 (opens new window) - Fixed table scrolling issue after inserting a new row over a table-wide selection. #10965 (opens new window)
- Fixed copy/cut/paste issue from outside elements. #10976 (opens new window)
- Fixed autocomplete dropdown dimensions after filtering out all choices. #10977 (opens new window)
- Fixed dataset clearing issue for formulas. #10983 (opens new window)
- Improved typings for the ContextMenu plugin. #10984 (opens new window)
- Added missing type for
namedExpressions. #10986 (opens new window) - Fixed double borders for row/column headers. #10988 (opens new window)
- Fixed a problem, where trying to render a hidden instance made it render all of its rows by disabling the rendering for hidden instances. #10989 (opens new window)
- Fixed error in numeric cell types after entering non-numeric values. #10931 (opens new window)
- Fixed a bug that prevented column sorting of the checkbox cell types. #11004 (opens new window)
- Updated the TS typings of the Shortcut Manager's
getShortcutsmethod. #10910 (opens new window) - React: Prevented React wrapper from throwing errors on updating component props with init-only settings. #10921 (opens new window)
14.3.0
Released on April 16, 2024
For more information on this release, see:
Added
- Added new feature, Navigation within selection and edit cells within a range #10732 (opens new window)
Changed
- Updated dependencies based on npm audit, most notably we upgraded to Angular 17.0 #10889 (opens new window)
Fixed
- Ensured the cursor changes to 'grabbing' for all table elements during column or row movement#10852 (opens new window)
- Resolved an issue where the
TABkey failed to move selection when editing select-type cells in 'fast edit' mode. #10849 (opens new window) - Prevent the
Cmd/Ctrl + Aaction when the focus is on headers. #10853 (opens new window) - Unified
sourcearguments inbeforeChangeandafterChangehooks triggered by the Merge Cells plugin. #10857 (opens new window) - Ensured focus retention after column collapsing. #10865 (opens new window)
- Fixed visibility issue with bottom/right cell borders after scrolling from the absolute top/left positions using the api. #10887 (opens new window)
- Fixed Dropdown plugin logic to prevent blocking click events from custom editors. #10888 (opens new window)
- Fixed datepicker position for the date cell type. #10892 (opens new window)
- Vue: Fixed an issue in the Vue and Vue3 wrappers where updating the hook callback didn't reflect changes in the underlying instance's settings. #10686 (opens new window)
- Vue: Fixed the behavior of the Vue/Vue3 wrappers'
simpleEqualhelper, which previously returned incorrect results when comparing identical objects. #10896 (opens new window)
14.2.0
Released on March 6, 2024
For more information on this release, see:
Added
- Added a new Handsontable hook,
beforeBeginEditing, to conditionally control when to allow cell editing. #10699 (opens new window) - Added the ability to prevent viewport scrolling by using two existing Handsontable hooks:
beforeViewportScrollVerticallyandbeforeViewportScrollHorizontally. #10724 (opens new window) - Added undo-and-redo support for column moving. #10746 (opens new window)
- Added a new
Filtersplugin hook:modifyFiltersMultiSelectValue. Now, filtered values lists will show the formatted numeric value, not the raw data. #10756 (opens new window)
Changed
- Improved the viewport scroll behavior after clicking on a cell. #10709 (opens new window)
- Improved the response of checkboxes to double-clicks. #10748 (opens new window)
- Improved the way
checkboxcells react to pressing Space or Enter. #10802 (opens new window) - Improved the type inference of the
propToCol()method. #10750 (opens new window) - React: Improved React portal caching. #10758 (opens new window)
Removed
- Removed versioned Handsontable examples and their GitHub publishing workflow. #10766 (opens new window)
Fixed
- Fixed an issue where the sizes of rows and columns were calculated incorrectly for hidden indexes. #10705 (opens new window)
- Fixed an issue where pasting arrays larger than the table's height caused data getter methods (such as
getCellMeta()) to throw an error. #10710 (opens new window) - Fixed an issue where HyperFormula and Handsontable didn't sync properly. #10719 (opens new window)
- Fixed an issue where removing all rows and columns while HyperFormula was enabled caused an error. #10720 (opens new window)
- Fixed an issue where very large text cells lacked the vertical scrollbar during editing. #10722 (opens new window)
- Fixed an issue where non-contiguous selection caused too many
afterSelectionEndandafterSelectionEndByPropcalls. #10725 (opens new window) - Fixed an issue where tables pasted from the clipboard contained redundant line breaks. #10745 (opens new window)
- Fixed an issue where clicking outside the table didn't remove the focus from the table (when Handsontable was placed in an iframe). #10752 (opens new window)
- Fixed an issue where hovering over the header handles of
handsontablecells caused an error. #10761 (opens new window) - Fixed an issue where
dropdowncells with long lists of options caused an error. #10763 (opens new window) - Fixed an issue where using the browser's autocomplete dropdown on an input outside of Handsontable caused errors. Also, fixed an event listener leak. #10795 (opens new window)
- Fixed an issue where using context and dropdown menus on mobile caused unwanted selection handles to show up. #10816 (opens new window)
- Fixed an issue where the
Autofillplugin treated cells filled with0as empty. #10817 (opens new window) - React: Fixed a missing
HotTableClassexport. #10760 (opens new window) - React: Fixed missing
rendererandeditorprops. #10768 (opens new window)
14.1.0
Released on January 16, 2024
For more information on this release, see:
Added
- Added a new configuration option,
renderAllColumns, which lets you disable column virtualization for improved accessibility. #10599 (opens new window) - Added a dedicated renderer (
DropdownRenderer) and validator (DropdownValidator) for the dropdown cell type. #10688 (opens new window) - Added support for the Tab key in the select editor (
selectEditor). #10673 (opens new window)
Changed
- Improved how undoing changes affects the viewport. Now, when you undo a change, the view automatically scrolls back to the changed area. #10639 (opens new window)
- Improved how pasting data affects the viewport. Now, even when the size of the pasted data is larger than the viewport, the viewport stays in place. #10630 (opens new window)
- Improved how removing a row or column affects the selection. Now, when you remove a row or column, the selection moves to the nearest visible row or column. #10690 (opens new window)
- Improved TypeScript definitions for multiple plugins. #10670 (opens new window)
- Improved TypeScript definitions for the core modules. #10671 (opens new window)
- Improved TypeScript definitions for the
CellCoordsandCellRangeclasses. #10678 (opens new window) - Improved TypeScript definitions for the
CustomBordersplugin. #10659 (opens new window) - React: Improved support for SSR frameworks. #10575 (opens new window)
Fixed
- Fixed an issue where double-clicking a cell resulted in highlighting the cell's contents. #10595 (opens new window)
- Fixed an issue where pressing the Tab key when editing a cell in the last column caused an error. #10632 (opens new window)
- Fixed an issue where pressing the Tab key with
tabNavigationset tofalsecaused the grid to scroll. #10634 (opens new window) - Fixed an issue where the
Filtersplugin threw aTypeErrorin specific setup cases. #10637 (opens new window) - Fixed an issue where changing Handsontable's configuration or data broke the focus position. #10642 (opens new window)
- Fixed an issue where Handsontable didn't go into the "unlisten" state after clicking an element outside of the table. #10648 (opens new window)
- Fixed an issue where recovering removed cells by using undo/redo didn't restore the cells' configuration options. #10649 (opens new window)
- Fixed an issue where the
ManualRowResizeandManualColumnResizeplugins threw an error when a cell renderer used the HTML<table>element. #10650 (opens new window) - Fixed an issue where, in some situations, the table didn't scroll after navigating it with the keyboard. #10655 (opens new window)
- Fixed an issue where the drag-to-scroll functionality was not working for window-scrolled instances. #10655 (opens new window)
- Fixed an issue where some configurations of the
CollapsibleColumnsplugin caused an uncaughtTypeError. #10693 (opens new window) - Fixed an issue where pressing the Backspace key in a date cell deleted the entire contents of the cell instead of a single character. #10696 (opens new window)
- Fixed several issues related to the
roundFloatoption of theColumnSummaryplugin. #10701 (opens new window) - Fixed a missing TypeScript definition in the
Formulasplugin. #10186 (opens new window) - Added
pikadaytohandsontablesdependencies, to ensure backward compatibility of Handsontable 14.1.0. #10715 (opens new window) - React: Fixed a missing TypeScript definition for the
settingsprop. #10661 (opens new window) - Vue: Fixed an issue where passing
hyperformulaInstancetohotSettingsresulted inTypeError: Converting circular structure to JSON. #8728 (opens new window) - Vue: Updated the peer dependencies of the Vue 3 wrapper with the latest version of Vue. #10571 (opens new window)
14.0.0
Released on November 30, 2023
For more information on this release, see:
- Blog post (14.0.0) (opens new window)
- Documentation (14.0) (opens new window)
- Migration guide (13.1.0 → 14.0)
Added
- Added multiple keyboard shortcuts. For more information, see the release blogpost (opens new window) and and the updated Keyboard Shortcuts (opens new window) documentation page. #10237 (opens new window) #10389 (opens new window) #10404 (opens new window) #10405 (opens new window) #10410 (opens new window) #10413 (opens new window) #10417 (opens new window) #10419 (opens new window) #10420 (opens new window) #10421 (opens new window) #10548 (opens new window)
- Added ARIA tags to various elements of the table to improve screen reader compatibility. #10463 (opens new window) #10524 (opens new window) #10526 (opens new window) #10539 (opens new window) #10548 (opens new window) #10541 (opens new window)
- Added the ability to navigate the headers with the keyboard by introducing a new
navigableHeadersoption along with other changes. #10265 (opens new window) #10301 (opens new window) - Added the ability to traverse the grid within a webpage using the
TABkey and introduced a newtabNavigationoption. #10430 (opens new window) #10585 (opens new window) - Added a new
beforeSelectionHighlightSethook that allows modifying logical selection coordinates before they are applied to the rendering engine. #10513 (opens new window) - Implemented the
selectrenderer and cell type. #10529 (opens new window) - Added an accessibility demo for javascript and React. #10532 (opens new window)
- Added
handsontableanddaterenderers for their respective cell types to allow adding the a11y attributes. #10535 (opens new window) - Added new
beforeColumnWrapandbeforeRowWraphooks. #10550 (opens new window)
Changed
- Breaking change: Changed the way the table reacts to using the "select all cells" methods and shortcuts. #10461 (opens new window)
- Breaking change: Changed the colors of the invalid cells and the arrow buttons of the autocomplete-typed cells. #10520 (opens new window)
- Breaking change: Improved the navigation and accessibility of the Filtering Dropdown Menu. #10530 (opens new window)
- Breaking change: Changed the way Handsontable handles focus by focusing the browser on cell elements. Introduced a new
imeFastEditoption to minimize the negative effects affecting the "fast edit" feature for the IME users. #10342 (opens new window) - Improved the keyboard navigation for the context and dropdown menus and added a new
forwardToContextoption to the ShortcutManager. #10519 (opens new window) - Extended the Core's
scrollViewportTomethod to allow disabling of cell auto-snapping. #10508 (opens new window) - Upgraded the monorepo to utilize Node 20. #10468 (opens new window)
- Improved DX by adding an exception to be thrown when trying to activate a shortcut context that has been not yet registered. #10476 (opens new window)
- Improved the performance of the table for cases when the table is hidden. #10490 (opens new window)
- Updated the TypeScript definitions. #10492 (opens new window) #10493 (opens new window) #10494 (opens new window) #10509 (opens new window)
- Changed the default styling of the "OK" button in the Filtering Dropdown when it's focus. #10558 (opens new window)
Fixed
- Fixed an issue where copying values containing an ampersand resulted in a wrong values being pasted. #10472 (opens new window)
- Fixed an issue related to the backlight position misalignment for the
ManualRowMoveandManualColumnMoveplugins. #10475 (opens new window) - Fixed a problem with row header widths changing sizes after adding/deleting rows. #10479 (opens new window)
- Fixed a problem with the
offsethelper for elements placed in foreign object contexts. #10480 (opens new window) - Fixed problems with size and alignment of the table when placed under elements with the CSS
transform: scaleattribute applied. #10482 (opens new window) - Added the missing
updateDatavalue to theChangeSourcetype. #10488 (opens new window) - Fixed a bug where pressing
Ctrl/Cmddoes not trigger non-contiguous selection. #10502 (opens new window) - Fixed a problem with the editor having incorrect width and height. #10504 (opens new window)
- Fixed visual glitches (unwanted pixels) of the
Autocompleteeditor's list in cases when there were no items. #10506 (opens new window) - Fixed the Vue and React demo's dependencies to be able to use the demos with Stackblitz. #10523 (opens new window)
- Fixed a problem with the merged cells having wrong row heights. #10500 (opens new window)
- Fixed the accessibility issues in the documentation. #10574 (opens new window)
- Updated the demos for better accessibility. #10563 (opens new window)
- Fixed a problem with the text editor's width being calculated incorrectly. #10590 (opens new window)
- Fixed a problem with two cells being selected after
Ctrl/Cmd + Shiftkey combination. #10622 (opens new window)
13.1.0
Released on August 31, 2023.
For more information on this release, see:
Changed
- Optimized the transpilation process of the distribution files. #10440 (opens new window)
- Updated the internal monorepo scripts to utilize Node 20. #10468 (opens new window)
Fixed
- Fixed a problem with errors being thrown when pressing
deleteorbackspacekeys after deselecting cells. #10272 (opens new window) - Fixed problems with moving rows when there are trimmed rows in the table. #10399 (opens new window)
- Fixed a problem with the column resize handle being stuck after the user clicked the right mouse button. #10416 (opens new window)
- Extended the type definition of
CellChangeto match the actual implementation. #10432 (opens new window) - Fixed a typo in the
CopyPasteplugin'scopymethod argument. #10446 (opens new window) - Fixed the mobile selection handlers that disappeared below the table headers when multiple cells were selected. #10447 (opens new window)
- Fixed the
MergeCellsplugin's problem with updating the cell meta after unmerging the previously-merged cells, which resulted in the Autofill plugin not working properly. #10456 (opens new window) - Added the missing type definition for
BaseEditor'sgetEditedCellRectmethod. #10459 (opens new window) - Corrected the type definitions for the
ContextMenu. #9566 (opens new window) - React: Mark an internal prop of the React wrapper's base editor component as optional. #10429 (opens new window)
13.0.0
Released on June 22, 2023.
For more information on this release, see:
- Blog post (13.0.0) (opens new window)
- Documentation (13.0) (opens new window)
- Migration guide (12.4 → 13.0)
Added
- Angular: Added support for Angular 16. #10396 (opens new window)
Changed
- Breaking change (React, Angular, Vue 2, Vue 3): Changed Handsontable's policy toward older versions of supported frameworks. From now on, Handsontable supports only those versions of any supported frameworks that are officially supported by their respective teams. Dropping Handsontable's support for any older framework versions won't be treated as a breaking change. #10396 (opens new window)
- Breaking change: Changed the order in which three hooks are executed: now, the
beforeChangehook is fired before theafterSetDataAtCellandafterSetDataAtRowProphooks. #10231 (opens new window) - Changed the margins of the context menu in the RTL layout direction. #10375 (opens new window)
Removed
- Breaking change (Angular): Dropped support for Angular 13 and lower. From now on, Handsontable supports only those versions of Angular that are officially supported by the Angular team: currently, it's 14-16. However, Handsontable 13.0.0 was thoroughly tested and, to the best of our knowledge, works correctly with versions down to Angular 12. #10396 (opens new window)
- Breaking change: Removed the deprecated
beforeAutofillInsidePopulate(opens new window) hook. #10407 (opens new window) - Breaking change: Removed the deprecated
getFirstNotHiddenIndex(opens new window) method. Instead, use thegetNearestNotHiddenIndex()method. #10407 (opens new window) - Breaking change: Removed the deprecated parameters of the
alter()method:insert_rowandinsert_col. Instead, use the following parameters:insert_row_above,insert_row_below,insert_col_start, andinsert_col_end. #10407 (opens new window) - Breaking change: Removed the deprecated parameters of the
populateFromArray()method:directionanddeltas. #10407 (opens new window)
Fixed
- Fixed an issue where the "Read only" icon of the context menu displayed incorrectly in the RTL layout direction. #10375 (opens new window)
12.4.0
Released on May 23, 2023.
For more information on this release, see:
Added
- Added two new Handsontable hooks,
afterColumnSequenceChangeandafterRowSequenceChange, which are fired after changing the order of columns or rows, respectively. #10215 (opens new window)
Fixed
- Fixed numerous issues related to syncing Handsontable with HyperFormula. Now, formulas work properly with all the Handsontable features. #10215 (opens new window)
- Fixed na issue where formulas didn't recalculate after rows or columns were moved. #4668 (opens new window)
- Fixed an issue where Handsontable's dates didn't sync correctly with HyperFormula's dates. #10085 (opens new window)
- Fixed an issue where calling
updateSettings()would reset HyperFormula's undo/redo actions stack. #10326 (opens new window) - Fixed an issue where the
Autofill,TrimRowsandFormulasplugins didn't work properly together. #10200 (opens new window) - Fixed an issue where the
modifySourceDatahook used the wrong type of indexes. #10215 (opens new window) - Fixed an issue where text copied from Handsontable to Excel included wrong types of spaces. #10017 (opens new window)
- Fixed an issue where mousing over the same cell twice didn't trigger the
beforeOnCellMouseOverandafterOnCellMouseOverhooks. #10321 (opens new window) - Updated TypeScript definition files related to the
CustomBordersplugin. #10360 (opens new window) - Fixed an issue where moving rows manually to the bottom was difficult due the misalignment between the backlight and guideline elements. #9556 (opens new window)
12.3.3
Released on March 28, 2023.
For more information on this release, see:
Added
- Added a Chinese (zh-CN) translation of the "Copy with headers" feature. #10273 (opens new window)
- Added a new guide: Rows sorting. #10183 (opens new window)
Fixed
- Fixed an issue where column-filter checkboxes got reset when the table was scrolled out of view. We solved this by preventing the table from triggering a complete render each time it leaves the viewport. #10206 (opens new window)
- Fixed an issue where clicking on a cell scrolled the table sideways in certain RTL configurations. #10206 (opens new window)
- Fixed an issue where calling
getDataAtCol()(opens new window) orgetDataAtProp()(opens new window) caused an error when the data set had more than 125 000 rows. #10226 (opens new window) - React: Fixed React 18 warnings about deprecated lifecycle methods. We removed
componentWillMount()andcomponentWillUpdate()from Handsontable's codebase and recreated their functionality by using React's portals. #10263 (opens new window)
12.3.2
Released on March 23, 2023.
Handsontable 12.3.2 may not work properly with React's functional components. If you're using React, you should upgrade to 12.3.3.
12.3.1
Released on February 6, 2023.
For more information on this release, see:
Added
- Added a Japanese translation of the "Copy with headers" feature. #10201 (opens new window)
Removed
- Removed the two-week delay in showing the console warning about license expiration. #10175 (opens new window)
Fixed
- Fixed an issue where
updateData()didn't work with nested data structures (NestedRows). #10178 (opens new window) - Fixed an issue of unwanted pixels in the "Filter by condition" menu by removing a superfluous overlay. #10174 (opens new window)
- Fixed an issue where merged cells could lack right and bottom borders due to a Chrome bug. #10212 (opens new window)
- Fixed an issue where using some browser and system shortcuts could cause Handsontable to behave as if Cmd/Ctrl was being held down. #10210 (opens new window)
12.3.0
Released on December 14, 2022.
For more information on this release, see:
Added
- Added a new feature that lets you copy the contents of column headers by using 3 new context menu options: "Copy with headers", "Copy with group headers", and "Copy headers only". #2288 (opens new window)
- Added 4 new API methods for copying column headers programmatically:
copyCellsOnly(),copyWithColumnHeaders(),copyWithAllColumnHeaders(), andcopyColumnHeadersOnly(). #2288 (opens new window) - Added missing TypeScript definitions of the
CellCoordsandCellRangeclasses, which are used in the arguments of some of the APIs. #9755 (opens new window) - Added missing TypeScript definitions for the following Handsontable hooks:
beforeColumnFreeze,afterColumnFreeze,beforeColumnUnfreeze, andafterColumnUnfreeze. #9859 (opens new window)
Fixed
- Fixed an issue where the
UndoRedoplugin didn't work properly with preconfigured columns. #10108 (opens new window) - Fixed an issue where formulas inserted programmatically by using
updateData()were not evaluated. #10011 (opens new window) - Fixed a regression where setting a column's
typecould overwrite other custom-defined settings. #10128 (opens new window) - Fixed an issue where Handsontable didn't render properly when initialized inside of a hidden container. #5322 (opens new window)
- Fixed an issue of desynchronization between configuration options (cell meta) and Handsontable's
data. The issue occurred when Handsontable's options were modified through the following hooks:
beforeCreateRow,afterCreateRow,beforeCreateCol, andafterCreateCol. #10136 (opens new window) - Fixed an issue where comments added to fixed columns didn't display properly after scrolling. #9645 (opens new window)
- Fixed an issue where typing in a
dropdowneditor caused the IME to disappear, resulting in wrong characters being typed. #9672 (opens new window) - React: Fixed an issue where
dropdowncells weren't validated properly when using theHotColumncomponent. #10065 (opens new window)
12.2.0
Released on October 25, 2022.
For more information on this release, see:
Added
- Added a new feature that lets you add rows and columns at a specified position. Now, the
alter()method takes 4 new parameter values:insert_row_above,insert_row_below,insert_col_start, andinsert_col_end. Theinsert_rowandinsert_colparameters are marked as deprecated. #9471 (opens new window)
Deprecated
- Deprecated the
insert_rowparameter of thealter()method. Instead, useinsert_row_aboveorinsert_row_below. #9471 (opens new window) - Deprecated the
insert_colparameter of thealter()method. Instead, useinsert_col_startorinsert_col_end. #9471 (opens new window)
Removed
- Removed a type definition for a non-existing method,
translateRowsToColumns(). #9919 (opens new window)
Fixed
- Fixed an issue where the width of the cell editor was calculated incorrectly. #3815 (opens new window)
- Fixed an issue where formulas surrounded by merged cells were converted to values by mistake. #6359 (opens new window)
- Fixed an issue where Handsontable could disappear on Firefox 93 (and later) in a specific use case. #9545 (opens new window)
- Fixed an issue where changing a cell's
typethroughsetCellMeta()didn't properly set the cell'seditorandrenderer. #9734 (opens new window) - Fixed an issue where the dropdown menu didn't display when the
NestedHeadersplugin was enabled and all rows were trimmed out. #9753 (opens new window)
12.1.3
Released on September 22, 2022.
For more information on this release, see:
Removed
- Removed a custom stable sorting implementation in favor of the stable sorting algorithm guaranteed by ECMAScript 2019. #6091 (opens new window)
- Removed type definitions for non-existing methods
rowOffsetandcolOffsetand a non-existing hookmodifyRowSourceData. #8659 (opens new window), #7317 (opens new window)
Fixed
- Fixed incorrect date format conversion on input in the date editor. #9681 (opens new window)
- Fixed an error when adding a large number of rows using the
altermethod. #7840 (opens new window) - Fixed IME text input in the editors. #9586 (opens new window)
- Fixed an issue where the editor did not open on key events when the cell was outside the viewport. #9022 (opens new window)
- Fixed an issue with "0" values being ignored by the Column Summary plugin. #6385 (opens new window)
- Fixed an error when opening the column dropdown menu with the Filters plugin enabled. #9561 (opens new window)
- Fixed an issue where the
trimWhitespaceoption could not be used in the column and cell levels of the cascading configuration. #7387 (opens new window) - Fixed the flickering of the selection area at the edge of the table while scrolling. #8317 (opens new window)
- Fixed misalignment on mobile devices when the edge cells were selected. #9621 (opens new window)
- Fixed type definitions for the method
setSourceDataAtCell. #8599 (opens new window)
12.1.2
Released on July 8, 2022.
For more information on this release, see:
Changed
- Changed the version of the Moment.js dependency from 2.29.3 to 2.29.4, in reaction to a recently-found Moment.js security vulnerability. The vulnerability did not affect a correct configuration of Handsontable. #9638 (opens new window)
- Vue: Freezed the version of the Vue framework that is used in our build chain to ~2.6. This shouldn't affect apps that use Vue 2.7+. #9624 (opens new window)
12.1.1
Released on July 5, 2022.
For more information on this release, see:
Fixed
- Angular: Fixed an issue where the installation of
@handsontable/angularpackage failed for versions of Angular other than 9 #9622 (opens new window)
12.1.0
Released on June 28, 2022.
For more information on this release, see:
Added
- Added smoother row and column moving when some row or columns are hidden. #7613 (opens new window)
- Added
getNearestNotHiddenIndex(), a new method that finds the visual index of the nearest not-hidden row or column and works even with large numbers of hidden rows or columns. The previous method,getFirstNotHiddenIndex(), still works, but is marked as deprecated. #9064 (opens new window) - Added a Czech translation. #9343 (opens new window)
- Added a Serbian translation. #9469 (opens new window)
- Added new hooks:
beforeColumnFreeze,afterColumnFreeze,beforeColumnUnfreeze, andafterColumnUnfreeze. #9248 (opens new window)
Changed
- Replaced HTML entities appearing in Handsontable's license texts with canonical counterparts. #9487 (opens new window)
- Updated the Pikaday optional dependency to 1.8.2, to let Handsontable work with Parcel 2 without errors. #9410 (opens new window)
- React: Changed the wrapper's lifecycle methods, to let Handsontable work with React 17+ without warnings. #8748 (opens new window)
- Angular: Moved the
@angular/coredependency to peer dependencies. #9574 (opens new window)
Deprecated
- Deprecated the
getFirstNotHiddenIndex()method. UsegetNearestNotHiddenIndex()instead. #9064 (opens new window)
Fixed
- Fixed an issue where dropdown and autocomplete cell editors rendered incorrectly if the
preventOverflowoption was set to'horizontal'. #3828 (opens new window) - Fixed an issue where frozen rows were getting duplicated. #4454 (opens new window)
- Fixed an issue where comments rendered outside the viewport. #4785 (opens new window)
- Fixed an issue where comments got positioned incorrectly when Handsontable ran within a scrollable element. #6744 (opens new window)
- Fixed an issue that occurred when Handsontable ran within an HTML
<form>: pressing Enter inside another form's<input>could open Handsontable's dropdown menu. #9295 (opens new window) - Fixed an issue where it was impossible to unmerge cells in the RTL layout direction. #9362 (opens new window)
- Fixed an issue where columns wider than the viewport's width and rows higher than the viewport's height didn't render correctly. #9473 (opens new window)
- Fixed an issue where dragging-to-scroll on mobile didn't work properly in the RTL layout direction. #9475 (opens new window)
- Fixed an issue where hiding columns with nested headers caused incorrect column width calculation
(for the
stretchH: 'all'option). #9496 (opens new window) - Fixed an issue where
ShortcutManagerunnecessarily handledkeyupevents with nokeydefined. #9562 (opens new window)
12.0.1
Released on May 16, 2022.
For more information on this release, see:
Fixed
- Fixed an issue where checking or unchecking a checkbox in a row with
autoRowSize: trueand multi-line cell values caused rows to align incorrectly. #7102 (opens new window) - Fixed an issue where checking or unchecking a checkbox changed the cell width. #8211 (opens new window)
- Fixed an issue where using a single Handsontable instance with multiple HyperFormula sheets could
lead to an uncaught
TypeError. #8268 (opens new window) - Fixed an issue where nested column headers didn't expand properly. #9099 (opens new window)
- Fixed an issue where updating custom borders could lead to uncaught error exceptions. #9455 (opens new window)
12.0.0
Released on April 28, 2022.
For more information on this release, see:
Added
- Added
ShortcutManager, a new API for customizing keyboard shortcuts. #8942 (opens new window) - Added support for right-to-left (RTL) languages, by introducing a new configuration option:
layoutDirection. #8760 (opens new window) - Added an Arabic translation. #9208 (opens new window)
- Added a new configuration option:
fixedColumnsStart. #8760 (opens new window) - Added a new keyboard shortcut (Ctrl/Cmd+Enter) for filling the selected range of cells with the value of the active cell. #9366 (opens new window)
- Added support for the Home and End keys inside cell editors, for moving the cursor to the beginning or end of the text. #9367 (opens new window)
- Added support for the latest Node LTS version. #9149 (opens new window)
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 (opens new window) [migration guide] - 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 (opens new window) [migration guide]
- Breaking change: Changed how
updatePlugin()reacts toupdateSettings()calls, to improve performance and the consistency of user experience. Now, calls toupdateSettings()update a plugin's state only when the options object contains a configuration option that's relevant to that particular plugin. #9021 (opens new window) [migration guide] - Breaking change: Changed the order of execution for two hooks: now,
beforeKeyDownis properly fired beforeafterDocumentKeyDown. #6236 (opens new window) [migration guide] - 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., Enter opens a cell's editor, but Ctrl+Enter doesn't). This change doesn't affect custom keyboard shortcuts. #8942 (opens new window) [migration guide]
- Breaking change: Split a cross-platform modifier key (Ctrl/Cmd) into two separate keys, to improve keyboard navigation consistency. Now, the Cmd key triggers actions on macOS where the Ctrl key triggers actions on Windows. For example, on macOS, Ctrl+A doesn't work anymore: Cmd+A is used instead. #9369 (opens new window) [migration guide]
- Breaking change: Changed the actions of the following keyboard shortcuts, to match the usual spreadsheet software behavior, and provide a more intuitive user experience: Ctrl/Cmd+↑, Ctrl/Cmd+Shift+↑, Ctrl/Cmd+↓, Ctrl/Cmd+Shift+↓, Ctrl/Cmd+←, Ctrl/Cmd+Shift+←, Ctrl/Cmd+→, Ctrl/Cmd+Shift+→, Home, Ctrl/Cmd+Home, End, Ctrl/Cmd+End, Shift+Page Up, and Shift+Page Down. #9363 (opens new window) #9364 (opens new window) #9365 (opens new window) [migration guide]
- Changed two scripts of the main Handsontable workspace (
/), to speed up the build process: now, thenpm run buildandnpm run testscripts don't build or test the Handsontable examples (/examples). #9412 (opens new window) - 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 (opens new window)
- Changed the version of the HyperFormula optional dependency from ^1.2.0 to ^2.0.0. #9411 (opens new window)
- Changed an internal property name, from
handsontableInstance.view.wttohandsontableInstance.view._wt, to make it clear that Walkontable (Handsontable's rendering engine) is not a part of Handsontable's public API. #8760 (opens new window)
Removed
- Breaking change: Removed the Cmd+M keyboard shortcut (used for cell merging), as it conflicted with window minimizing on macOS. The Ctrl + M keyboard shortcut works the same as before. #9368 (opens new window) [migration guide]
- Breaking change: Removed the Shift+Page Up/Page Down keyboard shortcuts from the cell editing context. #9401 (opens new window) [migration guide]
- 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 (opens new window)
- React: Removed the
enzymedependency from the React wrapper. #9151 (opens new window)
Fixed
- React, Angular, Vue 2, Vue 3: Fixed an issue where using
updateSettings()caused problems for state managers. #8372 (opens new window) - Fixed an issue where using
updateSettings()caused hidden columns to reappear. #7165 (opens new window) - Fixed an issue where using
updateSettings()caused merged cells to unmerge. #3315 (opens new window) - Fixed an issue where using
updateSettings()caused the state of nested rows to reset. #8838 (opens new window) - Fixed an issue where using
updateSettings()caused problems with column sorting. #7688 (opens new window) - React: Fixed an issue where using React's
setState()within theafterFilterhook broke filtering. #7567 (opens new window) - Vue 2: Fixed an issue where repeatedly changing Handsontable's height through
updateSettings()caused Handsontable to crash. #7546 (opens new window) - Vue 2: Fixed an issue where the
failedvalidation status got erased when editing a new row. #7541 (opens new window) - Fixed an issue where cell filtering did not use formula results. #5455 (opens new window)
- Fixed a wrong TypeScript definition in the
BasePluginclass. #9175 (opens new window) - Fixed an issue where the Ctrl/Cmd+Z and Ctrl/Cmd+Shift+Z keyboard shortcuts didn't behave properly inside cell editors. #9367 (opens new window)
- Fixed an issue where the dropdown menu contained unwanted rectangle elements. #9240 (opens new window)
- 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 theirpackage.jsonfiles. #9140 (opens new window)
11.1.0
Released on January 13, 2022
For more information on this release, see:
Added
- Added
updateData(), a new method that lets you replace Handsontable'sdatawithout resetting the states of cells, rows and columns. #7263 (opens new window) - Vue: Added Vue 3 (opens new window) support, by introducing a new wrapper. #7545 (opens new window)
Changed
- Updated the TypeScript definition of the
setDataAtCell()method. #8601 (opens new window) - Extended the
Code Examples DeploymentGitHub Actions workflow (opens new window), to allow for deploying code examples to GitHub Pages (opens new window)). #9058 (opens new window)
Fixed
- Fixed an issue where the
autocompleteeditor's suggestion list didn't update properly. #7570 (opens new window) - Fixed an issue where nested headers didn't render when
datawasn't defined. #8589 (opens new window) - Fixed some end-to-end tests that failed on mobile devices. #8749 (opens new window)
- Fixed an issue where the rendered selection could get shifted by 1px. #8756 (opens new window)
- Fixed an issue where the first column's border didn't display properly. #8767 (opens new window)
- Fixed an issue where the
CollapsibleColumnsplugin'sexpandAll()method didn't expand collapsed columns. #8900 (opens new window) - Fixed end-to-end test scripts that occasionally crashed. #8961 (opens new window)
- Fixed a typo in the
valueAccordingPercent()helper. #9006 (opens new window) - Fixed an issue where the
NestedRowsplugin could throw a type error after calling theupdateSettings()method. #9018 (opens new window) - Fixed an issue where performance was affected by removing events. #9044 (opens new window)
- Fixed a wrong TypeScript definition of the
MultiColumnSortingplugin'ssort()method. #9067 (opens new window) - Fixed an issue where the
Commentsplugin's editor disappeared after adding a comment. #9075 (opens new window) #6661 (opens new window) - React: Fixed a wrong return type. #9000 (opens new window)
11.0.1
Released on November 17, 2021.
For more information on this release, see:
Fixed
- Fixed the UMD build of
@handsontable/angular, which was not working properly in11.0.0. #8946 (opens new window)
11.0.0
Released on November 17, 2021.
For more information on this release, see:
Added
- Breaking change: Added TypeScript definition files for Handsontable's modularized version. #7489 (opens new window)
- Breaking change (Vue): Added support for modularization to the Vue wrapper. #8820 (opens new window)
- Breaking change (React): Added support for modularization to the React wrapper. #8819 (opens new window)
- Breaking change (Angular): Added support for modularization to the Angular wrapper. #8818 (opens new window)
- Added a new package entry point that allows importing built-in modules in one function call:
import { registerAllEditors, registerAllRenderers, registerAllValidators, registerAllCellTypes, registerAllPlugins } from 'handsontable/registry'. #8816 (opens new window) - Added a new
localeoption, to properly handle locale-based data. #8897 (opens new window) - Added a GitHub Actions workflow that covers testing Handsontable and the wrappers. #8652 (opens new window)
- Added new direction helpers (internal API) that lay ground for future RTL support. #8868 (opens new window)
Changed
- Breaking change: Changed how the
populateFromArray()method works with itsmethodargument set toshift_downorshift_right. #888 (opens new window) - Moved the entire Handsontable package to its own, new subdirectory:
/handsontable. #8759 (opens new window) - Replaced the license files with updated versions. #8877 (opens new window)
Fixed
- Fixed an issue with incorrect filtering of locale-based data while using search input from a dropdown menu. #6095 (opens new window)
- Fixed an error thrown when using the
populateFromArray()method with itsmethodargument set toshift_right. #6929 (opens new window) - Fixed an issue with the
beforeOnCellMouseDownandafterOnCellMouseDownhooks using wrong coordinates. #8498 (opens new window) - Fixed a
TypeErrorthrown when calling theupdateSettings()method in Handsontable's modularized version. #8830 (opens new window) - Fixed two issues with the documentation's
canonicalUrlentries. #8886 (opens new window) - Fixed an error thrown when autofill's source is a
datecell. #8894 (opens new window) - React: Fixed a React wrapper issue where it's impossible to use different sets of props in editor components reused across multiple columns. #8527 (opens new window)
10.0.0
Released on September 29, 2021.
For more information on this release, see:
Changed
- Breaking change: Unified the naming and description of the fourth argument,
controller, for selection manipulation in thebeforeOnCellMouseDownandbeforeOnCellMouseOverhooks. #4996 (opens new window) - Breaking change: Changed what the
beforeRenderandafterRenderhooks are, and when they are triggered. Added two new hooks:beforeViewRenderandafterViewRender. #6303 (opens new window) - Breaking change: Changed the optional
HyperFormula (opens new window) dependency from
0.6.2to^1.1.0, which introduces breaking changes for theFormulasplugin users. #8502 (opens new window) - Breaking change: Changed the default values for the
rowsLimitandcolumnsLimitoptions of theCopyPasteplugin. #8660 (opens new window) - Breaking change: Added a default font family, size, weight and color. #8661 (opens new window)
- Breaking change: Changed the
autoWrapRowandautoWrapColoptions` default values fromtruetofalse. #8662 (opens new window) - Improved the performance of the
getCellMeta()method. #6303 (opens new window) - Improved the documentation and TypeScript definition of the
selectOptionsoption. #8488 (opens new window) - Improved the arguments forwarding in the hooks #8668 (opens new window)
- Added a Github Actions workflow covering the testing of Handsontable and all of the wrappers. #8652 (opens new window)
Fixed
- Fixed an issue of not resetting the date picker's configuration #6636 (opens new window)
- An error won't be thrown while inserting a new row for nested rows in a specific case #7137 (opens new window)
- Fixed a few problems with the
NestedRowsplugin, occurring with theFormulasplugin enabled. #8048 (opens new window) - Fixed errors being thrown in the
Formulasplugin if a provided sheet name contained a dash character #8057 (opens new window) - Fixed multiple bugs related to undo/redo actions while using the
Formulasplugin #8078 (opens new window) - Fixed an issue where autofill was not able to be blocked/changed with the
beforeChangehook when theFormulasplugin was enabled #8107 (opens new window) - Data stored by the
NestedRowsplugin won't be corrupted by some actions #8180 (opens new window) - Collapsed parents won't be expanded after inserting rows #8181 (opens new window)
- Fixed the cooperation of the dropdown menu and column sorting (menu closing on click) #8232 (opens new window)
- Data won't be corrupted anymore when some alterations are performed #8614 (opens new window)
- Adjusted directories and files related to
dataMap(opens new window), to prevent potential circular references. #8704 (opens new window) - Improved the performance of the regular expression used to detect numeric values, and fixed major code smells. #8752 (opens new window)
9.0.2
Released on July 28, 2021.
For more information on this release, see:
Fixed
- Fixed an issue with an error being thrown when lazy loading columns on a setup with Nested Headers + Hidden Columns. #7160 (opens new window)
- Fixed column header sizes not being updated on
updateSettingscalls containingcolumns. #7689 (opens new window) - Fixed functional keys' behavior to prevent unexpected editing. #7838 (opens new window)
- Fixed missing collapsible indicator on IE. #8028 (opens new window)
- Fixed support for row and column headers in the
parseTableutility. #8041 (opens new window) - Fixed a bug where not providing a data object with the
NestedRowsplugin enabled crashed the table. #8171 (opens new window) - Vue: Fixed an issue where adding rows to a Handsontable instance wrapped for Vue resulted in additional rows being inserted at the end of the table. #8148 (opens new window)
- Vue: Fixed a problem in the Vue wrapper, where destroying the underlying Handsontable instance caused it to throw errors and crash. #8311 (opens new window)
- React: Fixed a problem in the React wrapper, where destroying the underlying Handsontable instance caused it to throw errors and crash. #8311 (opens new window)
- Angular: Fixed a problem in the Angular wrapper, where destroying the underlying Handsontable instance caused it to throw errors and crash. #8311 (opens new window)
Added
- Added new documentation engine #7624 (opens new window)
9.0.1
Released on June 17, 2021.
For more information on this release, see:
Removed
- Removed the redundant internal
jsonpatchlibrary from the source code. (#8140 (opens new window))
Fixed
- Fixed an issue where the validator function was called twice when the
Formulasplugin was enabled. (#8138 (opens new window)) - Introduced a new CSS style for cells of the
checkboxtype to restore previous behaviour. (#8196 (opens new window))
9.0.0
Released on June 1, 2021.
For more information on this release, see:
Changed
- Breaking change: New
Formulasplugin, with an entirely different API. See the migration guide for a full list of changes. Removed the requiredhot-formula-parserdependency for the sake of an optional one,hyperformula. (#6466 (opens new window)) - Breaking change: Changed the
afterAutofillandbeforeAutofillhooks' signatures. (#7987 (opens new window)) - Upgraded
eslintand eslint-related modules. (#7531 (opens new window)) - Added
fit&fdescribeto restricted globals in test files. (#8088 (opens new window))
Deprecated
- Deprecated the
beforeAutofillInsidePopulatehook. It will be removed in the next major release. (#8095 (opens new window))
Removed
- Breaking change: Removed the deprecated plugins - Header Tooltips and Observe Changes. (#8083 (opens new window))
Fixed
- Fixed a problem with the column indicator of the
CollapsibleColumnsplugin not being displayed properly on styled headers. (#7970 (opens new window)) - Fixed a problem with duplicated
afterCreateColhooks being triggered after undoing a removal of a column. (#8076 (opens new window)) - Fixed a problem with formulas not being calculated in certain conditions. (#4430 (opens new window))
- Fixed a bug with formulas displaying incorrect values after inserting new rows. (#4654 (opens new window))
- Fixed a problem with the
AVARAGEformula being updated incorrectly. (#4675 (opens new window)) - Fixed a problem with the
IFformulas not working properly. (#5870 (opens new window)) - Fixed a bug with using the
clearmethod broke the formulas in the table. (#6248 (opens new window))
8.4.0
Released on May 11, 2021.
For more information on this release, see:
Added
- Introduced a
separatedattribute for the label options (thelabelDOM element may wrapinputor be placed next to it). (#3172 (opens new window)) - Introduced the
modifyAutoColumnSizeSeedhook to let developers overwrite the default behaviour of the AutoColumnSize sampling. (#3339 (opens new window)) - Added support for hiding columns for the
NestedHeadersplugin. (#6879 (opens new window)) - Added ability to skip stacking actions by the
UndoRedoplugin and introduced new hooks. (#6948 (opens new window)) - Added 2 new hooks,
beforeHighlightingColumnHeaderandbeforeHighlightingRowHeader. Use them to retrieve a header element (<th>) before it gets highlighted. (#7528 (opens new window)) - Added a new method,
indexMapper.unregisterAll(). Use it to unregister all collected index maps from all map collections types. (#7528 (opens new window)) - Added a new method,
indexMapper.createChangesObserver(). Use it to listen to any changes made to indexes while Handsontable is running. (#7528 (opens new window)) - Added a new method,
indexMapper.createAndRegisterIndexMap(). Use it to create and register a new index map. (#7528 (opens new window))
Fixed
- Fixed a problem with sorting the
checkbox-typed cells and an issue with empty cells not being displayed properly. (#4047 (opens new window)) - Fixed a problem where undoing the removal of row with
readOnlycells was not performed properly. (#4754 (opens new window)) - Fixed state-change resolving for externally added checkboxes. (#5934 (opens new window))
- Fixed a problem with the native selection being removed with the
fragmentSelectionoption enabled. (#6083 (opens new window)) - Fixed a bug where number of columns rendered in the viewport was not correct. (#6115 (opens new window))
- Fixed a bug with the Dropdown Menu not opening on Android devices. (#6212 (opens new window))
- Fixed the double-tap issue on iOS. (#6961 (opens new window))
- Fixed a problem with the Comments editor being destroyed after destroying another Handsontable instance. (#7091 (opens new window))
- Fixed incorrect
numericFormat's type definition. (#7420 (opens new window)) - Fixed the
trimWhitespacetests on Firefox. (#7593 (opens new window)) - Fixed the [NPM Audit] Github Action job to report found vulnerabilities. (#7621 (opens new window))
- Fixed some minor iOS problems. (#7659 (opens new window))
- Fixed the TypeScript definition for the suspended rendering feature. (#7666 (opens new window))
- Fixed the
postbuildandexamples:installscripts on Windows. (#7680 (opens new window)) - Fixed the contents of the production
package.json. (#7723 (opens new window)) - Fixed an issue, where the callbacks for the
UndoRedoplugin were called twice. (#7825 (opens new window)) - Vue: Fixed a problem with displaying and removing rows in the
NestedRowsplugin. (#7548 (opens new window)) - React: Fixed an incompatibility in the property type definitions for the HotColumn component. (#7612 (opens new window))
Changed
- Enhanced the ESLint config file by adding a rule that checks if there are new lines missing before some keywords or statements. (#7691 (opens new window))
8.3.2
Released on March 16, 2021.
For more information on this release, see:
Added
- Introduced the monorepo to this repository. From now
on,
handsontable,@handsontable/angular,@handsontable/react, and@handsontable/vuewill all be developed in the same repo -handsontable. (#7380 (opens new window)) - Added a custom ESLint rule which allows restricting specified modules from loading by
importor re-exporting. (#7473 (opens new window))
Fixed
- Fixed a bug where it was impossible to enable
disableVisualSelectionfor cells/columns. (#5082 (opens new window)) - Fixed wrong paddings for multi-level headers. (#5086 (opens new window))
- Fixed problems with the
currentoption of thedisableVisualSelectionsetting. (#5869 (opens new window)) - Fixed problems with the
headeroption of thedisableVisualSelectionsetting. (#6025 (opens new window)) - Fixed a bug where the "double-tap-to-zoom" gesture prevented the editor from opening properly on some mobile devices. (#7142 (opens new window))
- Fixed a bug where calling the
updateSettingsmethod in the body of some callbacks would break the table. (#7231 (opens new window)) - Fixed an issue where the
maxRowsandmaxColsoptions interfered with hidden index calculations. (#7350 (opens new window)) - Fixed problems with doubled borders being displayed when
windowwas a scrollable container. (#7356 (opens new window)) - Fixed a bug where value population from an edited cell would result in a console error. (#7382 (opens new window))
- Fixed a bug where the dropdown cell type would not work on Safari 14+. (#7413 (opens new window))
- Fixed a bug where the
AutoRowSizeplugin would break the table when placed in an iframe. (#7424 (opens new window)) - Fixed bugs in navigation by
HOMEandENDkeys with hidden rows/columns enabled. (#7454 (opens new window)) - Fixed a bug with the
trimWhitespaceoption not working properly. (#7458 (opens new window)) - Fixed an issue with inconsistent documentation and TypeScript definitions
for
colWidthsandrowHeightsoptions. (#7507 (opens new window)) - Fixed the incorrect
cellTypesmodule paths in theexportsentry of thepackage.jsonfile. (#7597 (opens new window)) - Vue: Fixed Remote Code Execution vulnerability in the dev dependencies. (#7620 (opens new window))
8.3.1
Released on February 10, 2021.
For more information on this release, see:
Fixed
- Fixed an issue where the CSS files could be eliminated during tree-shaking. (#7516 (opens new window))
8.3.0
Released on January 28, 2021.
For more information on this release, see:
Added
- Introduced a new feature that allows postponing the table render and internal data cache update.
The table rendering time can be reduced several-fold times by batching (using the
batchmethod), multi-line API calls, or manually suspending rendering using thesuspendRenderandresumeRendermethods. (#7274 (opens new window)) - Introduced a possibility to import:
- plugins
- cell types
- editors
- renderers
- validators as separate modules, along with the Handsontable base. This change allows utilizing only the parts of Handsontable the end application is actually using, without the overhead of the full bundle. (#7403 (opens new window))
- Added a new workflow for managing and generating changelogs. (#7405 (opens new window))
Fixed
- Fixed a bug with auto-execution of the first item in the
ContextMenuplugin. (#7364 (opens new window)) - Fixed a bug where column sorting with multi column sorting crashed the table. (#7415 (opens new window))
- Added a missing entry for the
skipRowOnPasteoption in the TypeScript definition file. (#7394 (opens new window)) - Added missing tests to prevent issue #7377 from resurfacing. (#7396 (opens new window))
- Fixed an issue where altering columns did not update filters attached to columns. (#6830 (opens new window))
- Fixed typos and wrong return types in the TypeScript definition file. (#7399 (opens new window))
- Updated the dependencies causing potential security issues, as well as Babel configuration needed after the update. (#7463 (opens new window))
Changed
- Corrected a typo in a helper method from the
ColumnSortingplugin. (#7375 (opens new window)) - Optimized the performance of rendering the table with numerous spare rows (for
minSpareRows,minSpareCols,minRows, andminColsoptions). (#7439 (opens new window))
8.2.0
Released on November 12, 2020.
For more information on this release, see:
Added
- Added a new type of an Index Map named
LinkedPhysicalIndexToValueMap. (#7276 (opens new window)) - Added an external dependency,
DOMPurify, to add HTML sanitization that should minimize the risk of inserting insecure code using Handsontable built-in functionalities. (#7292 (opens new window))
Fixed
- Fixed an issue where the container was not updated after trimming rows. (#7241 (opens new window))
- Fixed an issue where the
htmlToGridSettingshelper threw an error if a<table>with no rows was passed. (#7311 (opens new window)) - Fixed an issue where the sorting indicator moved incorrectly when a column was added. (#6397 (opens new window))
- Fixed an issue where untrimming previously trimmed rows would sometimes result in the table instance not refreshing its height, leaving the row headers improperly rendered. (#6276 (opens new window))
- Fixed an issue where the hidden columns plugin caused unintended scrolling when some cells were hidden. (#7322 (opens new window))
- Fixed an issue where an error was thrown while hovering over row/column headers. (#6926 (opens new window))
- Fixed an issue where table validation caused incorrect data rendering if the hidden rows/column plugin was enabled. (#7301 (opens new window))
- Fixed an issue where adding 0 rows to the table ended with doubled entries in index mappers' collections. (#7326 (opens new window))
- Fixed a problem with the inconsistent behavior of the Context Menu's "Clear column" disabled status. (#7003 (opens new window))
- Fixed an issue with parsing multiline cells on pasting
text/htmlmime-type. (#7369 (opens new window))
8.1.0
Released on October 1, 2020.
For more information on this release, see:
Added
- Added support for resizing non-adjacent selected rows and columns. (#7162 (opens new window))
- Added e2e tests and reorganized already existing ones. (#6491 (opens new window))
Changed
- Updated dependencies to meet security requirements. (#7222 (opens new window))
- Improved performance for
TrimRows,HiddenRowsandHiddenColumnsplugins for big datasets with many trimmed/hidden indexes. (#7223 (opens new window))
Fixed
- Fixed an issue where the value did not show if the first part of the merged area was hidden. (#6871 (opens new window))
- Fixed an issue where after selecting the top-left element, resizing the row range was not possible. (#7162 (opens new window))
- Fixed a bug introduced within (#6871 (opens new window))
- Fixed an issue where column headers were cut off after hiding and revealing the columns with the
HiddenColumnsplugin. (#6395 (opens new window)) - Fixed an issue where a redundant row was added during copy/paste operations in some cases. (#5961 (opens new window))
- Fixed an issue where too many values were pasted after a column was hidden. (#6743 (opens new window))
- Fixed a bug where an attempt to move collapsed parent rows, with the
NestedRowsplugin enabled, resulted in an error. (#7132 (opens new window)) - Fixed an issue where, after column or row alteration, Handsontable threw an error if
ColumnSummarywas enabled without defined row ranges. (#7174 (opens new window)) - Fixed an issue where using
updateSettingswas breaking column sorting in specific cases. (#7228 (opens new window)) - Fixed an issue where, if
fixedColumnsLeftwas defined, rows had their left borders missing after disabling the row headers usingupdateSettings. (#5735 (opens new window)) - Fixed an issue where the Handsontable instance could fall into an infinite loop during vertical
scrolling. It only happened when the scrollable element was the
windowobject. (#7260 (opens new window)) - Fixed an issue with moving rows to the last row of the table when the
NestedRowsplugin was enabled. Repaired some other minor moving-related bugs as well. (#6067 (opens new window)) - Fixed an issue with adding an unnecessary extra empty line in cells on Safari. (#7262 (opens new window))
- Fixed an issue with clipped column headers when they were changed before or within usage of
updateSettings. (#6004 (opens new window))
8.0.0
Released on August 5, 2020.
For more information on this release, see:
Major changes
This version introduces a completely new architecture for row and column management - index mapper, which is responsible for the storage and management of index values. In prior versions, the calculation between physical and visual indexes was based on callbacks between hooks. That solution slowly led to inconsistencies and the calculation was imperfect in some cases. To fix that there was a major change in the whole system of mapping the indexes. The current solution offers an easier and more straightforward way to perform CRUD and move operations on rows and columns. It keeps all data in one place so getting and managing information is easier and less prone to bugs.
The existing features were adapted to benefit from the new architecture. Apart from that, extra methods and hooks were added and there are few depreciations and removals, too.
Breaking changes
- Modifying the table's data by reference and calling
render()will not work properly anymore. From this point onward, all the data-related operations need to be performed using the API methods, such aspopulateFromArrayorsetDataAtCell. - The
modifyRow,modifyCol,unmodifyRow,unmodifyColhooks are no longer needed and were removed. Their functionality can be achived by using API. More information in the 8.0.0 migration guide (opens new window). skipLengthCachehook was removed,indexMapperis now responsible for the cache and length.- The
ManualColumnFreezeplugin doesn't use theManualColumnMoveplugin anymore. - The
CollapsibleColumnsplugin doesn't use theHiddenColumnsplugin anymore. - The
NestedRowsandFiltersplugins don't use theTrimRowsplugin anymore. - The
minSpareRowsandminRowsoptions will ensure that the number of visible rows corresponds to the value provided to them (for example, theTrimRowsplugin won't have an impact on the number of displayed rows). toPhysicalRowandtoVisualColumnnow returnnullfor non-existant rows/columns. #5945 (opens new window)).- The
afterLoadDatahook receives a different set of arguments. It used to be just the initialLoad flag, now the first argument issourceData, followed byinitialLoad. - The
ManualColumnFreezeplugin will now put the unfrozen columns right next to the last frozen one. - The
RecordTranslatorobject and thetproperty available in the plugins were removed. - After-prefixed hooks (
afterLoadData,afterFilter, etc.) are now called just before therendercall. - Newly created rows and columns are now placed in the source data in the place calculated from its position in the visual context (they "stick" to their adjacent rows/columns). It also applies to moved rows and columns.
- When the
NestedRowsplugin isenabled, moving rows will be possible only using the UI or by calling thedragRowsmethod of theManualRowMoveplugin. - The
beforeRowResize,afterRowResize,beforeColumnResize,afterColumnResizehooks have the order of their arguments rearranged for the sake of consistency with other hooks and to fix an issue where multiple hooks didn't get the modified value in the pipeline: #3328 (opens new window). - Changed the argument structure in
collapsibleColumns'toggleCollapsibleSectionmethod: #6193 (opens new window). - The following sublist shows changes related to the refactor of
HiddenColumnsandCollapsibleColumns. They will be compatible with upcomingIndexMappers#5945 (opens new window) along with other adjustments #6547 (opens new window):- Hidden indexes aren’t rendered. As a consequence hooks
beforeValueRender,beforeRenderer,afterRenderer,modifyColWidth,beforeStretchingColumnWidthetc. will be executed just for some of the columns (just the rendered ones). - The
getColWidthfor hidden index will return 0 – it used to return 0.1. Also, it will no longer be called internally, the need can be now achieved by managers of rows and columns. - The
modifyColWidthhook will not be called internally. However, it will be executed when the user will call thegetColWidth. - Hidden indexes aren't rendered. As a consequence hooks
beforeValueRender,beforeRenderer,afterRenderer,modifyColWidth,beforeStretchingColumnWidthetc. will be executed just for some of the columns (just the rendered ones). listenfunction from the core API used to acceptmodifyDocumentFocusas optional parameter, this parameter was removed.CustomBordersplugin was adapted to work withHiddenColumnsproperly. From now on hiding cells at the start or the end of the range will also hide their borders. Hiding a single cell with borders will hide all of its borders. #7083 (opens new window).CollapsibleColumnswill no longer useHiddenColumnsplugin to work. #6204 (opens new window).- Adjusted
HiddenColumnsto be compatible with upcomingIndexMappers. #6547 (opens new window). hiddenRowandhiddenColumnhooks were removed. They were used to check if a given index is hidden in theHiddenColumnsandHiddenRowsplugins. Since now there may be more sources of hiding indexes they have been replaced byIndexMapperwith the newisHiddenmethod. It keeps the broad information about hidden indexes and their sources.rowOffsetandcolOffsetwere removed since they aliased the methods from Walkontable. #6547 (opens new window).
- Hidden indexes aren’t rendered. As a consequence hooks
- Changes related to adjusting
HiddenRowsto newIndexMapperarchitecture are #6177 (opens new window):- Adjusted
HiddenRowsto newIndexMapperarchitecture. #6177 (opens new window).
- Adjusted
- Developed a unified way to identify HOT "input" elements. All input elements owned by HOT got an attribute "data-hot-input" which are identified by that key. #6383 (opens new window).
NestedHeadersplugin was rewritten, from now on, only a tree-like structure will be allowed, meaning, there will be no possibility to place nested headers in-between layers. #6716 (opens new window)- The right mouse button (
RMB) click on the corner when there is no data will show all options disabled. #6547 (opens new window). - Left mouse button (
LMB) click on the top left corner will now select all cells along with their headers. #6547 (opens new window). - Removed the experimental
GanttChartplugin. #7022 (opens new window). - Adding properties which were not defined on initialization or by
updateSettingsto the source data is possible only by the usage ofsetSourceDataAtCell. #6664 (opens new window). - Passing
columnsordatainside thesettingsobject when calling theupdateSettingsmethod will result in resetting states corresponding to rows and columns (ie. row/column sequence, column width, row height, freezed columns etc.). The same behavior can be seen when usingloadData. In such cases, it is assumed that a new dataset is introduced upon callingupdateSettingsorloadData.#6547 (opens new window).
New features
- Added the Index Mapper architecture and its API. #5112 (opens new window) (more information available in the PRs #5945 (opens new window) with additional changes in #6547 (opens new window))
- Added a new
batchmethod. #5945 (opens new window) along with other adjustments (#7068 (opens new window))
Deprecations
- The
ObserveChangesplugin is no longer enabled bycolumnSortingand became deprecated. #5945 (opens new window) HeaderTooltipsplugin becomes deprecated and will be removed in the next major version. #7023 (opens new window)- IE support is deprecated and will be removed by the end of the year. #7026 (opens new window)
Changelog
- Added
modifySourceDatahook andsetSourceDataAtCellmethod. #6664 (opens new window) - Added new argument to
scrollViewportTomethod: optionalconsiderHiddenIndexeswhich is aboolean. #6547 (opens new window) - Added additional information available in the cell meta object - the language. #6254 (opens new window).
- Added a possibility to allow cancelling of
autofillin thebeforeAutofillhook. #4441 (opens new window) - Added support for newer versions of moment, numbro and pikaday. #5159 (opens new window)
- Added
afterAutoFillhook. #6135 (opens new window) - Added deprecated warning messages mechanism for plugin hooks. #6613 (opens new window)
- Added missing types for `instance.undoRedo`. #6346 (opens new window)
- Added
countRenderableColumnsmethod to theTableView. #6177 (opens new window) - Added missing "hide" property in
CustomBorderstypings. #6788 (opens new window) - Added
beforeSetCellMetahook with an ability to cancel the changes. #5388 (opens new window) - Added additional test for autofill plugin. #6756 (opens new window)
- Changed how
ManualRowMoveandManualColumnMoveplugins work #5945 (opens new window) - Click on a row header will select all cells (also hidden). #2391 (opens new window)
- Extracted Cell-Meta logic from Core to separate module. #6254 (opens new window)
- The
CellMetamanager was refactored for future features and improvements. #6233 (opens new window) - Rows can be resized to less than
rowHeights. #6149 (opens new window) - Left mouse button (LMB) click on the corner will now select all cells. #6547 (opens new window)
- Passing
columnsordatainside thesettingsobject when calling theupdateSettingsmethod will result in resetting states corresponding to rows and columns (ie. row/column sequence, column width, row height, freezed columns etc.). The same behavior can be seen when usingloadData. In such cases, it is assumed that a new dataset is introduced upon callingupdateSettingsorloadData.#6547 (opens new window). - The right mouse button (
RMB) click on the corner, column and row headers will show just some options, defined by newly created specification #7082 (opens new window) - Hidden indexes will no longer be rendered, as a consequence
afterRenderer,modifyColWidth,beforeStretchingColumnWidthwill be executable only on visible (meaning, rendered) rows and columns. #6547 (opens new window) - The
getColWidthfor hidden index will return 0 - it used to return 0.1 #6547 (opens new window) - The
modifyColWidthhook isn't called internally. However, it will be executed when the user will call thegetColWidth. #6547 (opens new window) - Hidden rows/columns won't rendered anymore. As a consequence hooks
beforeValueRender,beforeRenderer,afterRenderer,modifyColWidth,beforeStretchingColumnWidthetc. will be executed just for some of the columns (just the renderable ones). #6547 (opens new window) - Selection behavior changed when hiding cells from the
ContextMenu, now it is selecting a column on the right when there is space on right to the last selected column, selecting a column on the left otherwise. #6547 (opens new window) - Developed a unified way to identify HOT "input" elements. All input elements owned by HOT got an attribute "data-hot-input" which are identified by that key. #6383 (opens new window)
NestedHeadersplugin was rewritten, from now on, only a tree-like structure will be allowed, meaning, there will be no possibility to place nested headers in-between layers. #6716 (opens new window)CustomBordersplugin was adapted to work withHiddenColumnsproperly, from now on hiding cells at the start or at the end of a range will also hide their borders. Also, hiding a single cell with borders will hide all of its borders. #7083 (opens new window)CollapsibleColumnswill no longer useHiddenColumnsplugin to work. #6204 (opens new window)- Modifying the table's data by reference and calling `render()` will not work properly anymore.
From this point onward, all the data-related operations need to be performed using the API
methods, such as
populateFromArrayorsetDataAtCell. #5945 (opens new window) - Removed dependencies between plugins: the
ManualColumnFreezeplugin doesn't use theManualColumnMove, theCollapsibleColumnsplugin doesn't use theHiddenColumnsplugin,NestedRowsplugin doesn't use theTrimRowsplugin,Filtersplugin doesn't use theTrimRowsplugin anymore. #5945 (opens new window) along with other adjustments [#6547](https:// github.com/handsontable/handsontable/pull/6547): - The
minSpareRowsandminRowsoptions will ensure that the number of visible rows corresponds to the value provided to them (for example, theTrimRowsplugin won't have an impact on the number of displayed rows). #5945 (opens new window) toPhysicalRowandtoVisualColumnnow returnnullfor non-existant rows/columns. #5945 (opens new window)- The
afterLoadDatahook receives a different set of arguments. It used to be just the initialLoad flag, now the first argument issourceData, followed byinitialLoad. #5945 (opens new window) - The
ManualColumnFreezeplugin unfreezes the column just after the "line of freeze". #5945 (opens new window) - The
RecordTranslatorobject and thetproperty available in the plugins were removed. #5945 (opens new window) - After-prefixed hooks (
afterLoadData,afterFilter, etc.) are now called just before therendercall. #5945 (opens new window) - Newly created rows and columns are now placed in the source data in the place calculated from its position in the visual context (they "stick" to their adjacent rows/columns). It also applies to moved rows and columns. #5945 (opens new window)
- When the
NestedRowsplugin isenabled, moving rows will be possible only using the UI or by calling thedragRowsmethod of themanualRowMoveplugin. #5945 (opens new window) - The
beforeRowResize,afterRowResize,beforeColumnResize,afterColumnResizehooks have the order of their arguments rearranged for the sake of consistency with other hooks. #3328 (opens new window) - Changed the argument structure in
collapsibleColumns'toggleCollapsibleSectionmethod. #6193 (opens new window) - Updated the
moment,numbroandpikadaydependencies to their latest versions. #6610 (opens new window) - Standardize the `z-index` properties between the overlays. #6269 (opens new window)
HeaderTooltipsplugin becomes deprecated and will be removed in the next major version. #7023 (opens new window)- IE support is depreacated and will removed by the end of the year. #7026 (opens new window)
- Removed
firstVisibleColumnCSS class as no longer needed. #6547 (opens new window) - Removed helpers that covered IE8 support or are not needed anymore. #6525 (opens new window)
- Removed old unnecessary warning about
beforeChangecallback. #6792 (opens new window) - Removed
debugkey (key, css, docs). #6672 (opens new window) - Removed
hiddenRowandhiddenColumnhooks. #6547 (opens new window) - Removed optional argument
modifyDocumentFocusfrom thelistenfunction. #6547 (opens new window) - Removed
rowOffsetandcolOffsetpublic API methods since they aliased the methods from Walkontable. #6547 (opens new window) - Removed the experimental
GanttChartplugin. #7022 (opens new window) - Removed post-install warning from package.json file #6608 (opens new window)
- The
modifyRow,modifyCol,unmodifyRow,unmodifyColandskipLengthCachehooks are no longer needed and were removed. #5945 (opens new window) - Fixed a problem with data not being added to the table properly with the
columnSortingoption enabled. #2685 (opens new window) - Fixed a problem with
loadDatanot resetting the row order changed by theManualRowMoveplugin. #3568 (opens new window) - Fixed a bug, where using
alter'sinsert_rowafter using theloadDatamethod and sorting the data would add unintentional additional rows to the table. #3809 (opens new window) - Fixed a bug, where blank rows appeared in the middle of the table after using
loadDataalong with theminSpareRowsoption. #3937 (opens new window) - Fixed a problem with the
ColumnSummaryplugin not working properly after adding new rows using the Context Menu and sorting the data. #3924 (opens new window) - Fixed a bug, where calling
loadDatawith an object-based data source would not work properly. #4204 (opens new window) - Fixed a problem with the Hidden Columns settings being reset after calling
updateSettings. #4121 (opens new window) - Fixed a bug with the
Filtersplugin using incorrect indexes after moving and/or sorting the table. #4442 (opens new window) - Fixed a bug that caused a column to contain improper data after moving it to index
0. #4470 (opens new window) - Fixed a bug with the
afterRowMovehook receiving an impropertargetargument. #4501 (opens new window) - Fixed a problem with the
ManualColumnFreezeplugin enablingManualColumnMove, even if it was declared asfalse. #4553 (opens new window) - Fixed a problem with plugins using
arrayMappersnot working properly after updating the dataset. #4567 (opens new window) - Fixed a bug, where calling
loadDatawithminSpareRowsandmanualRowMoveenabled caused the table to improperly load the data. #4576 (opens new window) - Fixed a bug, where enabling
columnSortingcaused themanualColumnFreezeto be unusable. #4601 (opens new window) - Fixed a problem, where the columns were assigned improper widths after inserting additional columns or removing any of them. #4666 (opens new window)
- Fixed a bug, where moving rows was impossible while
persistentStatewas enabled. #4713 (opens new window) - Fixed a bug, where
manualColumnMovedidn't work if the dataset was empty. #4926 (opens new window) - Fixed a bug with the
collapseAllmethod from thecollapsibleColumnsplugin did not work properly ifcolumnSortingwas enabled. #4999 (opens new window) - Fixed a bug, where calling
loadDatawithminSpareRowsenabled would cause unwanted blank rows to appear. #5707 (opens new window) - Fixed a bug with the
afterColumnMovehook receiving an impropertargetargument. #5173 (opens new window) - Fixed a problem, where filtering data after moving rows would not work properly. #5178 (opens new window)
- Fixed a bug, where calling
loadDatamadeNaNappear in the column headers. #5369 (opens new window) - Fixed a bug with the
skipColumnOnPasteoption not working properly when usingcolumnSortingandhiddenColumns. #5824 (opens new window) - Fixed a bug with the
TrimRowsplugin did not work properly after moving rows. #5860 (opens new window) - Fixed a problem with
minSpareRowsnot working properly with thetrimRowsplugin being used. #5862 (opens new window) - Fixed a problem, where it was impossible to filter the data declared in the
NestedRowsplugin . #5889 (opens new window) - Fixed a bug, where filtering and sorting data would cause the
toVisualRowmethod to return the wrong results. #5890 (opens new window) - Fixed a bug with the
filtersandtrimRowsplugins not working properly alongside each other. #5915 (opens new window) - Fixed a bug, where
manualColumnMovewould not work properly when the data object properties count would be lower than the table column count. #5931 (opens new window) - Fixed a bug with the
TrimRowsplugin did not work properly with thestartRowsoption. #5953 (opens new window) - Fixed a problem, where using
loadDataafter sorting would not work as expected. #5956 (opens new window) - Fixed a problem with the
beforeColumnMoveandafterColumnMovehooks not containing information about their destination indexes. #6005 (opens new window) - Fixed a problem where using
filtersandminSpareRowswould make the table add an empty row at the beginning of the table. #6278 (opens new window) - Fixed a bug with the
manualRowMoveplugin would duplicate data in the moved rows, when used with a row index greater than the table row count. #6088 (opens new window) - Fixed a bug, where the
toVisualRowmethod returnednullwhen using thetrimRowsandcolumnSortingplugins together. #6310 (opens new window) - Fixed a problem, where calling
updateSettingsin theafterColumnMovehook callback would have no effect. #4480 (opens new window) - Fixed a bug, where calling
loadDatawould make thefiltersplugin to not behave as expected. #5244 (opens new window) - Fixed a bug, where detaching a child from a parent in the
NestedRowsplugin would cause a `+/-` button misalignment. #5900 (opens new window) - Fixed a problem with the
ColumnSummaryplugin creating a doubled summary row. #5794 (opens new window) - Fixed a bug, where moving children between parents using the
NestedRowsplugin would throw an error. #6066 (opens new window) - Fixed a bug, where adding rows by modifying the data by reference while using the
NestedRowsplugin would throw an error. #3914 (opens new window) - Fixed a bug, where merging cells would conflict with the
columnSortingplugin. #6086 (opens new window) - Fixed a bug, where the row headers would stay visible after removing all the table columns. #6412 (opens new window)
- Fixed an issue where Hidden columns become visible when the user ran
updateSettings. #4121 (opens new window) - Fixed an issue where using
hiddenColumnsandstretchHshowed a redundant horizontal scrollbar. #4181 (opens new window) - Fixed an issue in which if the last column was a hidden column and
stretchHwas enabled, the last column was displayed. #4370 (opens new window) - Fixed an issue where
updateSettingsperformance was very low because ofhiddenColumnsbeing rendered. #4381 (opens new window) - Fixed an issue where collapse was not working correctly with custom cell renderers. #4716 (opens new window)
- Fixed an incorrect header name when user defined more columns in the
NestedHeadersplugin. #4716 (opens new window) - Fixed an issue where
HiddenColumnsdid not work properly withColumnSorting. #5571 (opens new window) - Fixed an issue where
ManualColumnMoveshould work withHiddenColumns. #5598 (opens new window) - Fixed an issue where
hiddenColumnsoption interfered with the keyboard movement. #5704 (opens new window) - Fixed an issue where after hiding the first two rows, the row headers became de-synchronized by 1px. #5817 (opens new window)
- Fixed an issue where hiding columns affected selection of hidden columns. #5871 (opens new window)
- Fixed an issue where if
collapsibleColumnswere set totrueit was impossible to exit selection mode. #5875 (opens new window) - Fixed an issue where
hiddenColumnsdid not work properly with `autoWrapRow/autoWrapCol`. #5877 (opens new window) - Fixed an issue on IE where hiding the first column caused a display of double border for top left corner. #5881 (opens new window)
- Fixed an issue where
nestedHeadersduplicated a header name if more columns are added. #5882 (opens new window) - Fixed an issue where
HiddenColumnsplugin unset cell'srenderer. #5883 (opens new window) - Fixed an issue where
hiddenColumnshad stored visual indexes and should have used physical indexes. #5909 (opens new window) - Fixed an issue where hidden columns should be unrecoverable. #6113 (opens new window)
- Fixed an issue where row selection ignored columns that are hidden at the end. #6181 (opens new window)
- Fixed an issue where defining data with more data than used in
columnscaused an issue with showing column once it was hidden. #6426 (opens new window) - Fixed an issue where hiding rows, while there was a merged area, involved caused data shifting and unexpected merged area coordinates. #6376 (opens new window)
- Fixed an issue where
colHeaderwas truncated after movinghiddenColumn. #6463 (opens new window) - Fixed an issue where the last hidden column was visible upon column resizing. #6557 (opens new window)
- Fixed an issue where with hiding columns after moved them manually. #6668 (opens new window)
- Fixed an issue where expanding a collapsed column caused expanding of a child columns except for the first one. #5792 (opens new window)
- Fixed an issue where setting
columnSortingtotrue(on initialization or viaupdateSettings) made headers non-collapsible programmatically viacollapseAllmethod. #4999 (opens new window) - Fixed an issue where
CustomBordersplugin was missing in the definition file. #6477 (opens new window) - Fixed incorrect size of
wtHiderandwtHolderin overlays. #3873 (opens new window) - Fixed an issue where
updateSettingscould not updatetableClassName. #6295 (opens new window) - Fixed an issue where JSON data with empty value was losing some double quotes when pasted into a cell. #6167 (opens new window)
- Fixed an issue where some classes for the table were missing if one of them was empty. #6371 (opens new window)
- Fixed an issue where clicking in a contextmenu's border opened the native context menu. #6218 (opens new window)
- Fixed the error that ocurred during loading of E2E test runner in Edge and IE. #6713 (opens new window)
- Fixed the inconsistency and problems with adding rows from the corner when all rows are trimmed. #7061 (opens new window)
- Fixed an issue where using read-only and alignment from the context menu was disabled when all columns were selected. #7114 (opens new window)
- Fixed an issue where setting focus to a column to open context menu after applying a filter was impossible. #7005 (opens new window)
- Fixed an issue where
minSpareColswithundoadded too many columns. #6363 (opens new window) - Fixed the inconsistency in selection when using the right mouse button for first row/column. #6334 (opens new window)
- Fixed an issue where undoing column removal caused column headers to lack a header. #6992 (opens new window)
- Fixed an issue where
readOnlyfor column was erased (did not apply) if filters were used. #6559 (opens new window) - Fixed an issue where readonly property was lost after declining confirmation in
beforeRemoveColorbeforeRemoverow. #6332 (opens new window) - Fixed an issue where
readOnlystate for some cells was lost when rows withtrimRowsturned on were removed. #6990 (opens new window) - Fixed incorrect column header highlight when merged cells were unmerged and
hiddenColumnswere used. #6978 (opens new window) - Fixed an issue where after hiding the first row, the second row top border disappeared. #6977 (opens new window)
- Fixed an issue with incorrect selection after hiding the first row. #6831 (opens new window)
- Fixed an issue where hiding the first row caused blue highlight in column headers selection to disappear. #6976 (opens new window)
- Fixed wrong selection area after sorting with hidden rows. #6386 (opens new window)
- Fixed an issue where it was not possible to use
selectAllwhen the first row was hidden. #6975 (opens new window) - Fixed an issue where it was possible to select hidden row or column. #6974 (opens new window)
- Fixed an issue where row indexes changed if the first row was hiding after moving row from bottom to top. #6965 (opens new window)
- Fixed an issue where selection skipped the highest parent. #6770 (opens new window)
- Fixed an iisue where
nestedRowsblocked table from loading if data was not provided. #6928 (opens new window) - Fixed an isse where it was impossible to go back to the original cell after dragging down. #4233 (opens new window)
- Fixed an issue where keyboard navigation did not work on merged cells with hidden rows/columns. #6973 (opens new window)
- Fixed an issue where
trimRowsandhiddenRowswith specific settings broke borders. #6904 (opens new window) - Fixed wrong union type for
startPosition. #6840 (opens new window) - Fixed type mismatch for `Handsontable.plugins.ContextMenu`. #6347 (opens new window)
- Fixed an issue where
manualColumnMovedid not modify thecolumnsinupdateSettings. #5200 (opens new window) - Fixed rendering issue on column udpate with
updateSettings. #3770 (opens new window) - Fixed an issue where expanding a collapsed column was also expanding 'child' collapsed columns, except the first child. #5792 (opens new window)
- Fixed an issue with inproper selection for headers when the first column was hidden. #5999 (opens new window)
- Fixed an issue where it was not possible to align cells if the selection was made upward. #6600 (opens new window)
- Fixed an issue where
currentColClassNamedid not work properly withnestedHeaders. #5861 (opens new window) - Fixed an issue with scrollbar and dimension calculation in Firefox for toggling column visibility
with fixed columns and
stretchH. #6186 (opens new window) - Fixed an issue with undoing the nested row removal. #6433 (opens new window)
- Fixed an isse where
getSourceDatafunctions returned wrong data for nested rows. #5771 (opens new window) - Fixed na issue where the
Formulasplugin did not work withnestedRows. #4154 (opens new window) - Fixed an issue where nested headers and hidden columns highlighted ad additional column when used together. #6881 (opens new window)
- Fixed an issue where
getByRangefor sourceData did not work properly with nested object data. #6548 (opens new window) - Fixed an issue where `window.frameElement` threw errors in MSEdge, IE and Safari. #6478 (opens new window)
- Fixed an issue where `DataSource.countColumns` returned invalid number of columns for nested objects. #3958 (opens new window)
- Fixed an issue where
mergedCellswith hidden cells caused problems with rendering. #7020 (opens new window) - Fixed an issue where it was not possible to move column when all columns were selected by `ctrl + a`. #6355 (opens new window)
- Fixed an issue where double click on the column resize handle did not adjust size correctly. #6755 (opens new window)
- Fixed an issue where the cell meta was retrieved using the wrong coordinates. #6703 (opens new window)
- Fixed nested rows incorrect state after changing data. #5753 (opens new window)
- Fixed an issue in EDGE where the dropdown menu
onMouseOutevent caused critical errors when hovering over vertical scrollbar. #6699 (opens new window) - Fixed an issue with too many layers of highlight with noncontinuous selection on merged cells. #7028 (opens new window)
- Fixed an issue where
NestedHeadersdid not allow to define header level as an empty array. #7035 (opens new window) - Fixed an issue where passing
nestedHeadersas a single empty array stoped the table from rendering. #7036 (opens new window) - Fixed an issue where opening a context menu for a column when its hidden data was selected did not block adding of rows by the menu. #7050 (opens new window)
- Fixed an issue where it was not possible to navigate past hidden column using keyboard if`
hot.updateSettings` was called in
afterSelection. #3726 (opens new window) - Fixed an issue where headers did not export with
exportToFilein the specific case. #4176 (opens new window) - Fixed an issue with types mismatch. #6035 (opens new window)
- Fixed an issue where manual row resize handler threw an error when bottom rows overlay was enabled. #6435 (opens new window)
- Fixed an issue where the
afterRowResizehook shared incorrect results in the second parameter. #6430 (opens new window) - Fixed an issue where the row/column resize hooks should not have returned
null. #7074 (opens new window) - Fixed the loss of selection after merging from headers. #7076 (opens new window)
- Fixed an issue where calling
updateSettingschanged the index of frozen columns viafreezeColumnmethod. #6843 (opens new window) - Fixed an issue where deleting the last column via
updateSettingswhich was part of the selection caused scroll to the bottom. #5849 (opens new window) - Fixed an issue where it was not possible to hide rows and merge cells at the same time. #6224 (opens new window)
- Fixed the wrong data in merge cells after the hidden column and additionally an error occurs. #6888 (opens new window)
- Fixed an issue where it was not possible to change cell type via
setCellMeta. #4793 (opens new window) - Fixed an issue where cell editor did not dynamically changed while changing the cell type. #4360 (opens new window)
- Fixed an issue where it was not possible to unmerge cells if part of them was hidden. #7095 (opens new window)
- Fixed an issue where calling
clearmethod removed the focus from the table. #7099 (opens new window) - Fixed an issue where
clearmethod did not work for hidden data. #7097 (opens new window) - Fixed an issue where the editor was moved by 1px when the first row / column was hidden. #6982 (opens new window)
- Fixed an issue where headers were deselected after undoing removal. #6670 (opens new window)
- Fixed an issue with improper selection after insert column/row when mergeCells was enabled. #4897 (opens new window)
- Fixed an issue where wrong cell meta was removed when deleting rows. #6051 (opens new window)
- Fixed wrong types of
beforeRowMovearguments. #6539 (opens new window) - Fixed an issue where selection of a whole row did not happen consequently after selecting a row header. #5906 (opens new window)
- Fixed an issue where it was not possible to use physical row index instead of visual one. #6309 (opens new window)
- Fixed an issue where incorrect data was returned after undoing the remove column option. #5000 (opens new window)
- Fixed - Copy and paste works properly also when selecting hidden columns when: all columns within a selected range are hidden and when just some columns within a selected range are hidden. #7043 (opens new window).
- Fixed an issue where it was impossible to add new row in the
nestedRows. #5133 (opens new window) - Fixed an issue where
afterOnCellMouseDownreturned (0,0) coords after clicking on the topleft corner. #3978 (opens new window) - Fixed an issue where persisted
manualColumnMovewas not restored when usingloadData. #5207 (opens new window) - Fixed issues with filtering results in blank rows. #5208 (opens new window)
- Fixed an issue where changing data on collapsed rows resulted in error. #5328 (opens new window)
- Fixed an issue where the
manualColumnMoveoperation affected the column order of data loaded byloadData. #5591 (opens new window) - Fixed an issue where
nestedRowsdid not allow to keeprowHeadersafter collapsing. #5874 (opens new window) - Fixed performance and CPU issue caused by using some handsontable properties. #6058 (opens new window)
- Fixed an error with the
ColumnSummaryplugin when trying to create a row. #6300 (opens new window) - Fixed an error where `walkontable.css` and `handsontable.css` stylesheets were out of sync. #6381 (opens new window)
- Fixed an issue where
colHeadersorder was not updated after manual move with empty object data source. #6413 (opens new window) - Fixed "detach from parent" option. #6432 (opens new window)
- Fixed an issue where
PreventOverflowfeature did not work ifMultiColumnSortingplugin was enabled. #6514 (opens new window) - Fixed an issue where old CSS classes were not removed after
updateSettings. #6575 (opens new window) - Fixed an issue where
columnSummary,Filtersand spare rows were causing 'RangeError: Maximum call stack size exceeded'. #6695 (opens new window) - Fixed an issue where
afterSelectionEndreturned incorrect data when clicking on a column when all rows were hidden. #7045 (opens new window) - Fixed an issue where wrapping was not applied after setting
trimWhitespacetofalse. #6232 (opens new window) - Fixed an issue with additional selection border in iOS. #7103 (opens new window)
- Fixed an issue with rendering different borders. #6955 (opens new window)
- Fixed an issue with
BACKSPACEnot working properly in the filter by value input. #6842 (opens new window) - Fixed an issue with Undo/Redo not working with fixing columns. #6869 (opens new window)
- Added a missing argument in the
deepObjectSizefunction. #6821 (opens new window) - Fixed an issue where the table threw errors while clicking the cells if the Handsontable was
initialized with
fixedRowsTopandfixedRowsBottomhigher than rows length. #6718 (opens new window) - Fixed an issue where it was not possible to change the state of checkbox-type, non-adjacent cells
using
SPACE. #4882 (opens new window) - Fixed an issue where resizing made rows shorter than expected and caused row misalignment. #6429 (opens new window)
- Fixed an issue where Handsontable was missing rows when
preventOverflowwithupdateSettingswere used. #4303 (opens new window) - Adding properties which were not defined on initialization or by
updateSettingsto the source data is possible only by the usage ofsetSourceDataAtCell. #6664 (opens new window).
7.4.2
Released on February 19, 2020.
For more information on this release, see:
- Blog post (opens new window)
- Documentation (7.4.2) (opens new window)
- GitHub release tag (opens new window)
Changes
- Fixed an issue where the cell value could not be edited on mobile devices. (#6707 (opens new window))
- Fixed an issue where white lines appeared at the bottom of cell headers. (#6459 (opens new window))
- Fixed a bug, where resizing the window (while using Angular) would result in Handsontable not stretching properly and throwing an error. (#6710 (opens new window))
7.4.1
Released on February 19, 2020.
Due to technical issues, version 7.4.2 patch needed to be released.
All the changes from 7.4.1 are included in the 7.4.2 release.
7.4.0
Released on February 12, 2020.
For more information on this release, see:
- Blog post (opens new window)
- Documentation (7.4.0) (opens new window)
- GitHub release tag (opens new window)
Changes
- Fixed the problem, where the
onCellMouseUphook was fired for all mouse buttons exceptRMB, which was not consistent with theonCellMouseDownhook. To make the changes more consistent with the nativedblclickevent (which is triggered only for theLMBbutton), theonCellDblClickandonCellCornerDblClickhooks were modified to also fire only forLMB. (#6507 (opens new window)) - Updated
moment,pikadayandnumbroto their latest versions. (#6610 (opens new window)) - Fixed a bug with numbers not being presented properly with the
pt_BRculture setting. (#5569 (opens new window)) - Extended the Babel config with the possibility to use private methods, optional chaining and nullish coalescing operator. (#6308 (opens new window))
- Updated some of the internal configs, updated dev-dependencies, housekeeping etc. (#6560 (opens new window), #6609 (opens new window), #6612 (opens new window), #6629 (opens new window), #6574 (opens new window), #6565 (opens new window))
Older versions
The changelogs from older versions of Handsontable are available on GitHub (opens new window).