diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/client/views/nodes/DataVizBox/components/TableBox.tsx | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/client/views/nodes/DataVizBox/components/TableBox.tsx b/src/client/views/nodes/DataVizBox/components/TableBox.tsx index 9e2ce1c80..01f33dd80 100644 --- a/src/client/views/nodes/DataVizBox/components/TableBox.tsx +++ b/src/client/views/nodes/DataVizBox/components/TableBox.tsx @@ -153,15 +153,18 @@ export class TableBox extends React.Component<TableBoxProps> { key={rowId} className="table-row" onClick={action(e => { - // selecting a row + const highlited = Cast(this.props.layoutDoc.dataViz_highlitedRows, listSpec('number'), null); if (e.metaKey) { - const highlited = Cast(this.props.layoutDoc.dataViz_highlitedRows, listSpec('number'), null); + // highlighting a row if (highlited?.includes(rowId)) highlited.splice(highlited.indexOf(rowId), 1); else highlited?.push(rowId); } else { + // selecting a row const selected = Cast(this.props.layoutDoc.dataViz_selectedRows, listSpec('number'), null); - if (selected?.includes(rowId)) selected.splice(selected.indexOf(rowId), 1); - else selected?.push(rowId); + if (selected?.includes(rowId)) { + if (highlited?.includes(rowId)) highlited.splice(highlited.indexOf(rowId), 1); + selected.splice(selected.indexOf(rowId), 1); + } else selected?.push(rowId); } e.stopPropagation(); })} |