Changelog History
Page 3
-
v8.0.0-beta.2 Changes
July 15, 2020We are excited to announce we have just released the second beta version of 8.0.0. This blog post describes changes that happened after the release of the first beta, for the previous changes please see the previous blog post.
After implementing a new architecture for managing row and column indexes several parts of the library had te be adapted. It mainly includes adjusting the existing hooks to work properly with the new solution for managing the indexes. This is the last step before releasing a stable 8.0.0 version.
Major changes
We adapted the library to work with the new architecture for row and column management.
๐ฅ Breaking changes
- ๐จ Changes related to the refactor of
HiddenColumns
andCollapsibleColumns
. They will be compatible with upcomingIndexMappers
#6547 along with other adjustments #6178:- Hidden indexes will no longer be rendered, as a consequence
afterRenderer
,modifyColWidth
,beforeStretchingColumnWidth
will be executable only on visible (meaning, rendered) rows and columns. - The
getColWidth
for 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
modifyColWidth
hook 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
,beforeStretchingColumnWidth
etc. will be executed just for some of the columns (just the rendered ones). listen
function from the core API used to acceptmodifyDocumentFocus
as optional parameter, this parameter was removed.CustomBorders
plugin was adapted to work withHiddenColumns
properly, 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.CollapsibleColumns
will no longer useHiddenColumns
plugin to work. #6204- Refactored
HiddenColumns
to be compatible with upcomingIndexMappers
. #6179 - Renamed the following methods of the
IndexMapper
: - from
getPhysicalIndex
togetPhysicalFromVisualIndex
- from
getVisualIndex
togetVisualFromPhysicalIndex
- from
isSkipped
toisTrimmed
- from
getNotSkippedIndexes
togetNotTrimmedIndexes
- from
getNotSkippedIndexesLength
togetNotTrimmedIndexesLength
- from
SkipMap
toTrimmingMap
- from
VisualIndexToPhysicalIndexMap
toIndexesSequence
. hiddenRow
andhiddenColumn
hooks were removed. They were used to check if a given index is hidden in theHiddenColumns
andHiddenRows
plugins. Since now there may be more sources of hiding indexes they have been replaced byIndexMapper
with the newisHidden
method. It keeps the broad information about hidden indexes and their sources.rowOffset
andcolOffset
were removed since they aliased the methods from Walkontable #6547
- Hidden indexes will no longer be rendered, as a consequence
- ๐ Changes related to adjusting
HiddenRows
to newIndexMapper
architecture #6177:- Adjusted
HiddenRows
to newIndexMapper
architecture. - Refactored the
HiddenRows
plugin. #6887
- Adjusted
- 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. #6949 - 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.
- ๐
NestedHeaders
plugin 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. - โ Added
modifySourceData
hook andsetSourceDataAtRowProp
,setSourceDataAtCell
methods. #6664 - The right mouse button (RMB) click on the corner when there is no data will show all options disabled. This has two exceptions though: Insert column right and Insert row below when a table has data type defined by dataSchema as array, except Insert row right otherwise.
- Left mouse button (LMB) click on the top left corner will now select all cells along with their headers.
- โ Removed the experimental
GanttChart
plugin #7022
Depraciations
- ๐
HeaderTooltips
plugin becomes deprecated and will be removed in the next major version. #7023 - ๐ Internet Explorer support is deprecated and will be removed by the end of the year #7026
๐ Changelog
โ Added
- โ Added
modifySourceData
hook andsetSourceDataAtRowProp
,setSourceDataAtCell
methods. #6664. - โ Added an extra type of index map has been introduced. It's
HidingMap
. It works similar to theTrimmingMap
. #6547 - โ Added new methods to the IndexMapper class #6547:
getPhysicalFromRenderableIndex: (renderableIndex: number) => number | null,
getVisualFromRenderableIndex: (renderableIndex: number) => number | null,
getRenderableFromVisualIndex: (visualIndex: number) => number | null,
isHidden: (physicalIndex: number) => boolean,
getFirstNotHiddenIndex: (fromVisualIndex: number, incrementBy: number, searchAlsoOtherWayAround?: boolean, indexForNextSearch?: number) => number | null,
getNotHiddenIndexes: (readFromCache?: boolean) => number[],
getNotHiddenIndexesLength: () => number,
getRenderableIndexes: (readFromCache?: boolean) => number[],
getRenderableIndexesLength: () => number
.
- โ Added new argument to
scrollViewportTo
method: optionalconsiderHiddenIndexes
which is aboolean
. #6547 - โ Added additional information available in the cell meta object - the language. #6254.
- โ Added a possibility to allow cancelling of
autofill
in thebeforeAutofill
hook #4441 - โ Added support for newer versions of moment, numbro and pikaday. #5159
- โ Added
afterAutoFill
hook. #6135 - โ Added z-index to
fixedRowsBottom
. #6269 - โ Added deprecated warning messages mechanism for plugin hooks. #6613
- โ Added a missing argument in the
deepObjectSize
function. #6821 - โ Added missing types for
instance.undoRedo
. #6346 - โ Added
countRenderableColumns
method to theTableView
#6887 - โ Added missing "hide" property in
CustomBorders
typings. #6788 - โ Added
beforeSetCellMeta
hook with an ability to cancel the changes. #5388 - โ Added additional test for autofill plugin. #6756
๐ Changed
- ๐จ Refactored hidden indexes. #6595
- Click on a row header will select all cells (also hidden). #2391
- Extracted Cell-Meta logic from Core to separate module. #6254
- ๐จ The
CellMeta
manager was refactored for future features and improvements. #6233 - Rows can be resized to less than
rowHeights
. #6149 - Left mouse button (LMB) click on the corner will now select all cells. #6547
- The right mouse button (RMB) click on the corner when there is no data will show all options disabled. This has two exceptions though: Insert column right and Insert row below when a table has data type defined by dataSchema as array, except Insert row right otherwise. #6547
- Hidden indexes will no longer be rendered, as a consequence
afterRenderer
,modifyColWidth
,beforeStretchingColumnWidth
will be executable only on visible (meaning, rendered) rows and columns. #6547 - The
getColWidth
for 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. #6547 - Left mouse button (LMB) click on the top left corner will now select all cells. #6547
- The
modifyColWidth
hook isn't called internally. However, it will be executed when the user will call thegetColWidth
. #6547 - IndexMapper
getPhysicalIndex
method was renamed togetPhysicalFromVisualIndex
.#6547 - IndexMapper
getVisualIndex
method was renamed togetVisualFromPhysicalIndex
.#6547 - IndexMapper
isSkipped
method was renamed toisTrimmed
.#6547 - IndexMapper
getNotSkippedIndexes
method was renamed togetNotTrimmedIndexes
.#6547 - IndexMapper
getNotSkippedIndexesLength
method was renamed togetNotTrimmedIndexesLength
.#6547 SkipMap
class was renamed toTrimmingMap
.#6547VisualIndexToPhysicalIndexMap
class was renamed toIndexesSequence
.#6547- Hidden indexes aren't rendered. As a consequence hooks
beforeValueRender
,beforeRenderer
,afterRenderer
,modifyColWidth
,beforeStretchingColumnWidth
etc. will be executed just for some of the columns (just the rendered ones). #6547 - 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. - 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
- ๐
NestedHeaders
plugin 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 - ๐
CustomBorders
plugin was adapted to work withHiddenColumns
properly, 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 - ๐
CollapsibleColumns
will no longer useHiddenColumns
plugin to work. #6204
๐ Deprecated
- ๐
HeaderTooltips
plugin becomes deprecated and will be removed in the next major version. #7023 - ๐ IE support is depreacated and will removed by the end of the year #7026
โ Removed
- โ Removed helpers that covered IE8 support or are not needed anymore. #6525
- โ Removed old unnecessary warning about
beforeChange
callback. #6792 - โ Removed
debug
key (key, css, docs). #6672 - โ Removed
hiddenRow
andhiddenColumn
hooks. #6547 - โ Removed optional argument
modifyDocumentFocus
from thelisten
function. - โ Removed
rowOffset
andcolOffset
public API methods since they aliased the methods from Walkontable #6547 - โ Removed the experimental
GanttChart
plugin #7022 - โ Removed post-install warning from package.json file #6608
๐ Fixed
- ๐ Fixed an issue where Hidden columns become visible when the user ran
updateSettings
. #4121 - ๐ Fixed an issue where using
hiddenColumns
andstretchH
showed a redundant horizontal scrollbar. #4181 - ๐ Fixed an issue in which if the last column was a hidden column and
stretchH
was enabled, the last column was displayed. #4370 - ๐ Fixed an issue where
updateSettings
performance was very low because ofhiddenColumns
being rendered. #4381 - ๐ Fixed an issue where collapse was not working correctly with custom cell renderers. #4716
- ๐ Fixed an incorrect header name when user defined more columns in the
nestedHeaders
plugin. #4716 - ๐ Fixed an issue where
hiddenColumns
did not work properly withcolumnSorting
. #5571 - ๐ Fixed an issue where
manualColumnMove
should work withhiddenColumns
. #5598 - ๐ Fixed an issue where
hiddenColumns
option interfered with the keyboard movement. #5704 - ๐ Fixed an issue where after hiding the first two rows, the row headers became de-synchronized by 1px. #5817
- ๐ Fixed an issue where hiding columns affected selection of hidden columns. #5871
- ๐ Fixed an issue where if
collapsibleColumns
were set totrue
it was impossible to exit selection mode. #5875 - ๐ Fixed an issue where
hiddenColumns
did not work properly withautoWrapRow/autoWrapCol
. #5877 - ๐ Fixed an issue on IE where hiding the first column caused a display of double border for top left corner. #5881
- ๐ Fixed an issue where
nestedHeaders
duplicated a header name if more columns are added. #5882 - ๐ Fixed an issue where
hiddenColumns
plugin unset cell'srenderer
. #5883 - ๐ Fixed an issue where
hiddenColumns
had stored visual indexes and should have used physical indexes. #5909 - ๐ Fixed an issue where the additional row was added during copy/paste operations and with hidden rows/columns enabled. #5961
- ๐ Fixed an issue where hidden columns should be unrecoverable. #6113
- ๐ Fixed an issue where row selection ignored columns that are hidden at the end. #6181
- ๐ Fixed an issue where defining data with more data than used in
columns
caused an issue with showing column once it was hidden. #6426 - ๐ Fixed an issue where hiding rows, while there was a merged area, involved caused data shifting and unexpected merged area coordinates. #6376
- ๐ Fixed an issue where some headers were gone when hidden and shown again. #6395
- ๐ Fixed an issue where
colHeader
was truncated after movinghiddenColumn
. #6463 - ๐ Fixed an issue where the last hidden column was visible upon column resizing. #6557
- ๐ Fixed an issue where with hiding columns after moved them manually. #6668
- ๐ Fixed an issue where copy-and-paste worked wrong in a cell that was hidden and then uncovered again. #6742
- ๐ Fixed an issue where too many values were pasted when the column was hidden. #6743
- ๐ Fixed an issue where expanding a collapsed column caused expanding of a child columns except for the first one. #5792
- ๐ Fixed an issue where setting
columnSorting
totrue
(on initialization or viaupdateSettings
) made headers non-collapsible programmatically viacollapseAll
method. #4999 - ๐ Fixed an issue where
customBorders
plugin was missing in the definition file. #6477 - ๐ Fixed incorrect size of
wtHider
andwtHolder
in overlays. #3873 - ๐ Fixed an issue where
updateSettings
could not updatetableClassName
. #6295 - ๐ Fixed an issue where JSON data with empty value was losing some double quotes when pasted into a cell. #6167
- ๐ Fixed an issue where some classes for the table were missing if one of them was empty. #6371
- ๐ Fixed an issue where clicking in a contextmenu's border opened the native context menu. #6218
- ๐ Fixed the error that ocurred during loading of E2E test runner in Edge and IE. #6713
- ๐ Fixed the inconsistency and problems with adding rows from the corner when all rows are trimmed. #7061
- ๐ Fixed an issue where using read-only and alignment from the context menu was disabled when all columns were selected. #7114
- ๐ Fixed an issue where setting focus to a column to open context menu after applying a filter was impossible. #7005
- ๐ Fixed an issue where
minSpareCols
withundo
added too many columns. #6363 - ๐ Fixed the inconsistency in selection when using the right mouse button for first row/column. #6334
- ๐ Fixed an issue where undoing column removal caused column headers to lack a header. #6992
- ๐ Fixed an issue where
readOnly
for column was erased (did not apply) if filters were used. #6559 - ๐ Fixed an issue where readonly property was lost after declining confirmation in
beforeRemoveCol
orbeforeRemoverow
. #6332 - ๐ Fixed an issue where
readOnly
state for some cells was lost when rows withtrimRows
turned on were removed. #6990 - ๐ Fixed incorrect column header highlight when merged cells were unmerged and
hiddenColumns
were used. #6978 - ๐ Fixed an issue where after hiding the first row, the second row top border disappeared. #6977
- ๐ Fixed an issue with incorrect selection after hiding the first row. #6831
- ๐ Fixed an issue where hiding the first row caused blue highlight in column headers selection to disappear. #6976
- ๐ Fixed wrong selection area after sorting with hidden rows. #6386
- ๐ Fixed an issue where it was not possible to use
selectAll
when the first row was hidden. #6975 - ๐ Fixed an issue where it was possible to select hidden row or column. #6974
- ๐ Fixed an issue where row indexes changed if the first row was hiding after moving row from bottom to top. #6965
- ๐ Fixed an issue where selection skipped the highest parent. #6770
- ๐ Fixed an iisue where
nestedRows
blocked table from loading if data was not provided. #6928 - ๐ Fixed an isse where it was impossible to go back to the original cell after dragging down. #4233
- ๐ Fixed an issue where keyboard navigation did not work on merged cells with hidden rows/columns. #6973
- ๐ Fixed an issue where
trimRows
andhiddenRows
with specific settings broke borders. #6904 - ๐ Fixed wrong union type for
startPosition
. #6840 - ๐ Fixed type mismatch for
Handsontable.plugins.ContextMenu
. #6347 - ๐ Fixed an issue where
manualColumnMove
did not modify thecolumns
inupdateSettings
. #5200 - ๐ Fixed rendering issue on column udpate with
updateSettings
. #3770 - ๐ Fixed an issue where expanding a collapsed column was also expanding 'child' collapsed columns, except the first child. #5792
- ๐ Fixed an issue with inproper selection for headers when the first column was hidden. #5999
- ๐ Fixed an issue where it was not possible to align cells if the selection was made upward. #6600
- ๐ Fixed an issue where
currentColClassName
did not work properly withnestedHeaders
. #5861 - ๐ Fixed an issue with scrollbar and dimension calculation in Firefox for toggling column visibility with fixed columns and
stretchH
. #6186 - ๐ Fixed an issue with undoing the nested row removal. #6433
- ๐ Fixed an isse where
getSourceData
functions returned wrong data for nested rows. #5771 - ๐ Fixed na issue where formulas plugin did not work with
nestedRows
. #4154 - ๐ Fixed an issue where nested headers and hidden columns highlighted ad additional column when used together. #6881
- ๐ Fixed an issue where
getByRange
for sourceData did not work properly with nested object data. #6548 - ๐ Fixed an issue where
window.frameElement
threw errors in MSEdge, IE and Safari. #6478 - ๐ Fixed an issue where
DataSource.countColumns
returned invalid number of columns for nested objects. #3958 - ๐ Fixed an issue where
mergedCells
with hidden cells caused problems with rendering. #7020 - ๐ Fixed an issue where it was not possible to move column when all columns were selected by
ctrl + a
. #6355 - ๐ Fixed an issue where double click on the column resize handle did not adjust size correctly. #6755
- ๐ Fixed an issue where the cell meta was retrieved using the wrong coordinates. #6703
- ๐ Fixed nested rows incorrect state after changing data. #5753
- ๐ Fixed an issue in EDGE where the dropdown menu
onMouseOut
event caused critical errors when hovering over vertical scrollbar. #6699 - ๐ Fixed an issue with too many layers of highlight with noncontinuous selection on merged cells. #7028
- ๐ Fixed an issue where
NestedHeaders
did not allow to define header level as an empty array. #7035 - ๐ Fixed an issue where passing
nestedHeaders
as a single empty array stoped the table from rendering. #7036 - ๐ 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
- ๐ Fixed an issue where it was not possible to navigate past hidden column using keyboard if
hot.updateSettings
was called inafterSelection
. #3726 - ๐ Fixed an issue where headers did not export with
exportToFile
in the specific case. #4176 - ๐ Fixed an issue with types mismatch. #6035
- ๐ Fixed an issue where manual row resize handler threw an error when bottom rows overlay was enabled. #6435
- ๐ Fixed an issue where the
afterRowResize
hook shared incorrect results in the second parameter. #6430 - ๐ Fixed an issue where the row/column resize hooks should not have returned
null
. #7074 - ๐ Fixed the loss of selection after merging from headers. #7076
- ๐ Fixed an issue where calling
updateSettings
changed the index of frozen columns viafreezeColumn
method. #6843 - ๐ Fixed an issue where deleting the last column via
updateSettings
which was part of the selection caused scroll to the bottom. #5849 - ๐ Fixed an issue where it was not possible to hide rows and merge cells at the same time. #6224
- ๐ Fixed the wrong data in merge cells after the hidden column and additionally an error occurs. #6888
- ๐ Fixed an issue where it was not possible to change cell type via
setCellMeta
. #4793 - ๐ Fixed an issue where cell editor did not dynamically changed while changing the cell type. #4360
- ๐ Fixed an issue where it was not possible to unmerge cells if part of them was hidden. #7095
- ๐ Fixed an issue where calling
clear
method removed the focus from the table. #7099 - ๐ Fixed an issue where
clear
method did not work for hidden data. #7097 - ๐ Fixed an issue where the editor was moved by 1px when the first row / column was hidden. #6982
- ๐ Fixed an issue where headers were deselected after undoing removal. #6670
- ๐ Fixed an issue with improper selection after insert column/row when mergeCells was enabled. #4897
- ๐ Fixed an issue where wrong cell meta was removed when deleting rows. #6051
- ๐ Fixed wrong types of
beforeRowMove
arguments. #6539 - ๐ Fixed an issue where selection of a whole row did not happen consequently after selecting a row header. #5906
- ๐ Fixed an issue where it was not possible to use physical row index instead of visual one. #6309
- ๐ Fixed an issue where incorrect data was returned after undoing the remove column option. #5000
- ๐ 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.
- ๐จ Changes related to the refactor of
-
v8.0.0-beta.1 Changes
November 14, 2019๐ฅ Breaking changes
We implemented a new architecture for row and column management.
It allows an easier and more straightforward way to perform CRUD and moving operations on rows and columns. This change forced us to create some breaking changes:
๐ The
observeChanges
plugin is no longer enabled bycolumnSorting
and became deprecated.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 aspopulateFromArray
orsetDataAtCell
.๐ The
modifyRow
,modifyCol
,unmodifyRow
,unmodifyCol
andskipLengthCache
hooks are no longer needed and were removed.๐ The
manualColumnFreeze
plugin doesn't use themanualColumnMove
plugin anymore.๐ The
collapsibleColumns
plugin doesn't use thehiddenColumns
plugin anymore.๐ The
nestedRows
plugin doesn't use thetrimRows
plugin anymore.๐ The
filters
plugin doesn't use thetrimRows
plugin anymore.๐ The
minSpareRows
andminRows
options will ensure that the number of visible rows corresponds to the value provided to them (for example, thetrimRows
plugin won't have an impact on the number of displayed rows).Methods like
toPhysicalRow
,toVisualColumn
, etc. now returnnull
for non-existant rows/columns.The
afterLoadData
hook receives a different set of arguments. It used to be just theinitialLoad
flag, now the first argument issourceData
, followed byinitialLoad
.The
manualColumnFreeze
plugin will now put the unfrozen columns right next to the last frozen one.๐ The
RecordTranslator
object and thet
property available in the plugins were removed.after
-prefixed hooks (afterLoadData
,afterFilter
, etc.) are now called just before therender
call.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
nestedRows
plugin is enabled, moving rows will be possible only using the UI or by calling thedragRows
method of themanualRowMove
plugin.๐ For more in-depth information about these changes, see the description of pull request #5945. (#5751)
The
beforeRowResize
,afterRowResize
,beforeColumnResize
,afterColumnResize
hooks have the order of their arguments rearranged for the sake of consistency with other hooks:Was:
(currentIndex: number, newSize: number, isDoubleClick: boolean)
Is:
(newSize: number, index: number, isDoubleClick: boolean)
(#3328)
๐ Change the argument structure in
collapsibleColumns
'toggleCollapsibleSection
method.Was:
(coords: object, action: string)
Is:
coords: Array<object>, action: string)
(#6193)
๐ New features (also present in the upcoming version
7.3.0
)- ๐ We're introducing a new option to the Context Menu plugin -
uiContainer
. It allows declaring a DOM container, where all the Context Menu's element will be placed. It may come espacially handy when using Handsontable inside of aniframe
or some other content-trimming context. (#6283, #6417) - ๐ We also added a
uiContainer
option to the Copy/Paste plugin. It works in a similar way to the one described above, but is used to declare the container for the Copy/Paste plugin's DOM elements. (#6343)
๐ Changes
- Resolved a problem with data not being added to the table properly with the
columnSorting
option enabled. (#2685) - ๐ Fixed a problem with
loadData
not resetting the row order changed by themanualRowMove
plugin. (#3568) - ๐ Fixed a bug, where using
alter
'sinsert_row
after using theloadData
method and sorting the data would add unintentional additional rows to the table. (#3809) - ๐ Fixed a bug, where blank rows appeared in the middle of the table after using
loadData
along with theminSpareRows
option. (#3937) - ๐ Fixed a problem with the
columnSummary
plugin not working properly after adding new rows using the Context Menu and sorting the data. (#3924) - ๐ Fixed a bug, where calling
loadData
with an object-based data source would not work properly. (#4204) - ๐ Fixed a problem with the Hidden Columns settings being reset after calling
updateSettings
. (#4121) - ๐ Fixed a bug with the
filters
plugin using incorrect indexes after moving and/or sorting the table. (#4442) - ๐ Fixed a bug that caused a column to contain improper data after moving it to index
0
. (#4470) - ๐ Fixed a bug with the
afterRowMove
hook receiving an impropertarget
argument. (#4501) - ๐ Fixed a problem with the
manualColumnFreeze
plugin enablingmanualColumnMove
, even if it was declared asfalse
. (#4553) - ๐ Fixed a problem with plugins using
arrayMappers
not working properly after updating the dataset. (#4567) - ๐ Fixed a bug, where calling
loadData
withminSpareRows
andmanualRowMove
enabled caused the table to improperly load the data. (#4576) - ๐ Fixed a bug, where enabling
columnSorting
caused themanualColumnFreeze
to be unusable. (#4601) - ๐ Fixed a problem, where the columns were assigned improper widths after inserting additional columns or removing any of them. (#4666)
- ๐ Fixed a bug, where moving rows was impossible while
persistentState
was enabled. (#4713) - ๐ Fixed a bug, where
manualColumnMove
didn't work if the dataset was empty. (#4926) - ๐ Fixed a bug with the
collapseAll
method from thecollapsibleColumns
plugin did not work properly ifcolumnSorting
was enabled. (#4999) - ๐ Created a shared row mapper for the
columnSorting
,manualRowMove
, andtrimRows
plugins. (#5065) - ๐จ Refactored the
manualRowMove
plugin to match the new architecture. (#5068) - ๐ Fixed a bug, where calling
loadData
withminSpareRows
enabled would cause unwanted blank rows to appear. (#5707) - ๐ Fixed a bug with the
afterColumnMove
hook receiving an impropertarget
argument. (#5173) - ๐ Fixed a problem, where filtering data after moving rows would not work properly. (#5178)
- ๐ Fixed a bug, where calling
loadData
madeNaN
appear in the column headers. (#5369) - ๐ Fixed a bug with the
skipColumnOnPaste
option not working properly when usingcolumnSorting
andhiddenColumns
. (#5824) - ๐ Fixed a bug with the
trimRows
plugin did not work properly after moving rows. (#5860) - ๐ Fixed a problem with
minSpareRows
not working properly with thetrimRows
plugin being used. (#5862) - ๐ Fixed a problem, where it was impossible to filter the data declared in the
nestedRows
plugin. (#5889) - ๐ Fixed a bug, where filtering and sorting data would cause the
toVisualRow
method to return the wrong results. (#5890) - ๐ Fixed a bug with the
filters
andtrimRows
plugins not working properly alongside each other. (#5915) - ๐ Fixed a bug, where
manualColumnMove
would not work properly when the data object properties count would be lower than the table column count. (#5931) - ๐ Fixed a bug with the
trimRows
plugin did not work properly with thestartRows
option. (#5953) - ๐ Fixed a problem, where using
loadData
after sorting would not work as expected. (#5956) - ๐ Fixed a problem with the
beforeColumnMove
andafterColumnMove
hooks not containing information about their destination indexes. (#6005) - ๐ Fixed a problem where using
filters
andminSpareRows
would make the table add an empty row at the beginning of the table. (#6278) - ๐ Fixed a bug with the
manualRowMove
plugin would duplicate data in the moved rows, when used with a row index greater than the table row count. (#6088) - ๐ Fixed a bug, where the
toVisualRow
method returnednull
when using thetrimRows
andcolumnSorting
plugins together. (#6310) - ๐ Fixed a problem, where calling
updateSettings
in theafterColumnMove
hook callback would have no effect. (#4480) - ๐ Fixed a bug, where calling
loadData
would make thefilters
plugin to not behave as expected. (#5244) - ๐ Fixed a bug, where detaching a child from a parent in the
nestedRows
plugin would cause a+/-
button misalignment. (#5900) - ๐ Fixed a problem with the
columnSummary
plugin creating a doubled summary row. (#5794) - ๐ Fixed a bug, where moving children between parents using the
nestedRows
plugin would throw an error. (#6066) - ๐ Fixed a bug, where adding rows by modifying the data by reference while using the
nestedRows
plugin would throw an error. (#3914) - ๐ Fixed a bug, where merging cells would conflict with the
columnSorting
plugin. (#6086) - ๐ Fixed a bug, where the row headers would stay visible after removing all the table columns. (#6412)
Includes changes from
7.3.0
- ๐ Fixed a problem with table resizing on every scroll event on Firefox, when no table height was defined. (#6344)
- โก๏ธ Updated the
puppeteer
package in thedevDependencies
section to get rid of thenpm audit
security error. (#6393) - โ Removed the unneeded
CNAME_
file from the repo. (#6389) - ๐ Fixed a problem, where pasting data from Excel caused Handsontable to throw an error. (#6217)
- ๐ Fixed a bug, where data pasted from Excel would get improperly formatted in Handsontable. (#6258)
- ๐ Fixed a bug, where the
& < > ' "
characters in the pasted data would be automatically changed to their equivalent HTML entities. (#1535)
- ๐ We're introducing a new option to the Context Menu plugin -
-
v7.4.2 Changes
February 19, 2020๐ Changes
- ๐ Fixed an issue where the cell value could not be edited on mobile devices. (#6707)
- ๐ Fixed an issue where white lines appeared at the bottom of cell headers. (#6459)
- ๐ Fixed a bug, where resizing the window (while using Angular) would result in Handsontable not stretching properly and throwing an error. (#6710)
-
v7.4.1
February 19, 2020 -
v7.4.0 Changes
February 12, 2020๐ Changes
- ๐ Fixed the problem, where the
onCellMouseUp
hook was fired for all mouse buttons except the right one, which was not consistent with theonCellMouseDown
hook.
To make the changes more consistent with the nativedblclick
event (which is triggered only for the left mouse button), theonCellDblClick
andonCellCornerDblClick
hooks were modified to also fire only for the left mouse button. (#6507) - โก๏ธ Updated
moment
,pikaday
andnumbro
to their latest versions. (#6610) - ๐ Fixed a bug with numbers not being presented properly with the
pt_BR
culture setting. (#5569) - Extended the Babel config with the possibility to use private methods, optional chaining and nullish coalescing operator. (#6308)
- โก๏ธ Updated some of the internal configs, updated dev-dependencies, housekeeping etc. (#6560, #6609, #6612, #6629, #6574, #6565)
- ๐ Fixed the problem, where the
-
v7.3.0 Changes
December 12, 2019๐ New features
- ๐ Version
7.3.0
introduces a new option to the Context Menu plugin -uiContainer
. It allows declaring a DOM container, where all the Context Menu's element will be placed. It may come espacially handy when using Handsontable inside of aniframe
or some other content-trimming context. (#6283, #6417) - ๐ We also added a
uiContainer
option to the Copy/Paste plugin. It works in a similar way to the one described above, but is used to declare the container for the Copy/Paste plugin's DOM elements. (#6343)
๐ Changes
- ๐ Fixed a problem with table resizing on every scroll event on Firefox, when no table height was defined. (#6344)
- โก๏ธ Updated the
puppeteer
package in thedevDependencies
section to get rid of thenpm audit
security error. (#6393) - โ Removed the unneeded
CNAME_
file from the repo. (#6389) - ๐ Fixed a problem, where pasting data from Excel caused Handsontable to throw an error. (#6217)
- ๐ Fixed a bug, where data pasted from Excel would get improperly formatted in Handsontable. (#6258)
- ๐ Fixed a bug, where the
& < > ' "
characters in the pasted data would be automatically changed to their equivalent HTML entities. (#1535) - ๐ Fixed a bug, where opening the system's context menu, hitting ESC and moving the cursor outside of the container would scroll the table. (#5846)
- ๐ Fixed a problem, where right-clicking on a disabled entry in Handsontable's context menu would open the system's context menu. (#5846)
- ๐ Fixed a bug, where right-clicking on an active entry in Handsontable's context menu would open another context menu. (#5846)
- ๐ Fixed a test case for Context Menu's scrolling. (#6449)
- โ Modified the container size in the the tests' DOM helper file. (#6446)
- ๐ Version
-
v7.2.2 Changes
October 23, 2019 -
v7.2.1 Changes
October 16, 2019 -
v7.2.0 Changes
October 15, 2019๐ Changes
- โ Added
cellProperties
to the arguments of search'squeryMethod
so that it would be possible to tell what kind of data was being queried. (#4944) - ๐ Fixed a bug with a disappearing column header, when the
height
option is was set toauto
. (#6302) - ๐ Fixed a problem with an error being thrown when trying the clear a column with the first cell set to
readOnly
. (#6246) - ๐ Fixed a bug where it was impossible to set data for a
readOnly
-typed cell, when any cell was selected. (#6214) - ๐ Fixed a problem with an error being thrown when pasting data to
readOnly
-typed cells. (#6209) - ๐ Fixed a problem with the
Undo
feature not working for columns defined as functions. (#6147) - ๐ Fixed a bug where
this.TD
wasundefined
in the editor'sprepare
method whenfixedColumnsLeft
andviewportColumnRenderingOffset
were both set. (#6043) - ๐ Fixed a bug where the cell selection frame overlapped the bottom fixed rows. (#5947)
- ๐ Fixed a problem with an error being thrown after initializing an empty table or removing all the data from the table and clicking the corner header. (#5126)
- ๐ Fixed a problem with reloading data with a new set in the Nested Rows plugin. (#6339)
- Rewrote some of the Walkontable methods to return correct information about the table. (#6191)
- Made some improvements to the TypeScript definition file. (#6168, #6107, #6102, #6239, #6266)
- ๐ Improved the documentation and definition files regarding the
after-
hooks for creating and removing rows/columns. (#6296) - ๐ Improved the documentation for the
totalColumn
option. (#6281) - โ Added a
lint:fix
script to be able to fix the lint errors from the CLI. (#6260) - ๐ Fixed all the tests for Windows and added run-script,
walkontable.watch
. (#6187) - โ Removed the unused
check-es3-syntax-cli
package to fix Github's security alert. (#6319) - โก๏ธ Updated the dependencies to fix errors thrown by
npm audit
(#6318)
- โ Added
-
v7.1.1 Changes
August 12, 2019๐ Changes
- ๐จ Refactored the Walkontable table renderers. (#6089)
- ๐ Changed the underlying format for empty cells. From now on, all empty cells are stored internally as
null
. The only exceptions are:- empty cells that have been edited and saved as an empty string,
- empty cells that have been copied and pasted.
In both of these cases, they are stored as an empty string (''
).
(#4106)
- โ Removed the
yarn.lock
file from the repository and updated the Node version in the Travis configuration file. (#6161) - โ Added a missing
rootInstanceSymbol
property to Handsontable to allow usingnew Handsontable.Core
properly. (#6040) - ๐ Fixed a bug, where copying/pasting/deleting data for
autocomplete
-typed cells caused an error to be thrown. (#6033) - ๐ Refactored the Custom Borders plugin to resolve problems with its performance. (#6052)
- โก๏ธ Optimized the use of arrays for the V8 engine in the
parseTable
module. (#6060) - ๐ Fixed a problem where scrolling the dropdown menu scrolled the entire table. (#5913)
- ๐ Fixed a bug where removing a change in the
beforeChange
hook callback broke the table. (#5893) - ๐ Fixed a problem where cutting the value from a
checkbox
-typed cell made it switch to#bad-value#
. (#4106) - ๐ Fixed a bug where the
getCell
method returnedundefined
, while it wasn't supposed to. (#6079) - โก๏ธ Updated Jasmine and made changes to the tests and tests configuration in order for them to pass in the browser and prevent memory leaks. (#6077, #6096)
- ๐ Changed the way the
afterColumnMove
hook works, now it won't fire ifbeforeColumnMove
hook callback canceled the action. (#5958) - ๐ Fixed a problem with the
Undo
feature reverting the editing actions that didn't make any changes to the data. (#4072) - ๐ Fixed a bug, where the dropdown editor did not work properly, when there were multiple Handsontable instances implemented on the page. (#6122)
- ๐ Fixed the tests for Windows. (#5878)
- ๐ Fixed the npm audit security errors. (#6130)
- ๐ Fixed a problem with scrolling not working properly when hovering over the Handsontable container. (#5212)
- ๐จ Refactored the
toMatchHTML
Jasmine matcher to make tests pass on Firefox. (#6148) - ๐ Fixed the
getCell
method for fixed bottom rows, which caused the selection not to work properly. (#6084) - ๐ Fixed a bug, where the table height increased every time the window had been resized. (#3433)
- Corrected some minor mistakes in the JSDocs and Typescript definitions. (#6123, #6125, #6142, #6152, #6158, #6160, #6129)