diff --git a/openbis_ng_ui/src/js/components/common/grid/Grid.jsx b/openbis_ng_ui/src/js/components/common/grid/Grid.jsx index 554d272552f41f7d33458d2abab25a6c9a826884..d1d62ee8a2bc662716b095abef1a8e5a9c9086b7 100644 --- a/openbis_ng_ui/src/js/components/common/grid/Grid.jsx +++ b/openbis_ng_ui/src/js/components/common/grid/Grid.jsx @@ -225,7 +225,7 @@ class Grid extends React.PureComponent { renderExports() { const { id, multiselectable } = this.props - const { rows, exportOptions } = this.state + const { rows, multiselectedRows, exportOptions } = this.state const exportable = this.controller.getExportable() @@ -239,6 +239,7 @@ class Grid extends React.PureComponent { disabled={rows.length === 0} exportOptions={exportOptions} multiselectable={multiselectable} + multiselectedRows={multiselectedRows} onExport={this.controller.handleExport} onExportOptionsChange={this.controller.handleExportOptionsChange} /> diff --git a/openbis_ng_ui/src/js/components/common/grid/GridExports.jsx b/openbis_ng_ui/src/js/components/common/grid/GridExports.jsx index 99cc2f708d33d641729d4fb7ed52064df30e079d..40d60a6730603c3e2723c6430bdbb44a7ca42259 100644 --- a/openbis_ng_ui/src/js/components/common/grid/GridExports.jsx +++ b/openbis_ng_ui/src/js/components/common/grid/GridExports.jsx @@ -79,7 +79,14 @@ class GridExports extends React.PureComponent { render() { logger.log(logger.DEBUG, 'GridExports.render') - const { id, exportOptions, disabled, multiselectable, classes } = this.props + const { + id, + exportOptions, + disabled, + multiselectable, + multiselectedRows, + classes + } = this.props const { el } = this.state const rowsOptions = [ @@ -187,6 +194,10 @@ class GridExports extends React.PureComponent { id={id + '.trigger-exports-button-id'} label={messages.get(messages.EXPORT)} type='neutral' + disabled={ + exportOptions.rows === GridExportOptions.SELECTED_ROWS && + _.isEmpty(multiselectedRows) + } onClick={this.handleExport} /> </div>