diff --git a/frontend/src/Components/Table/VirtualTable.js b/frontend/src/Components/Table/VirtualTable.js
index 310459866..b2d68a888 100644
--- a/frontend/src/Components/Table/VirtualTable.js
+++ b/frontend/src/Components/Table/VirtualTable.js
@@ -7,6 +7,8 @@ import { WindowScroller, Grid } from 'react-virtualized';
import hasDifferentItemsOrOrder from 'Utilities/Object/hasDifferentItemsOrOrder';
import styles from './VirtualTable.css';
+const ROW_HEIGHT = 38;
+
function overscanIndicesGetter(options) {
const {
cellCount,
@@ -45,7 +47,8 @@ class VirtualTable extends Component {
componentDidUpdate(prevProps, prevState) {
const {
- items
+ items,
+ scrollIndex
} = this.props;
const {
@@ -56,6 +59,13 @@ class VirtualTable extends Component {
// recomputeGridSize also forces Grid to discard its cache of rendered cells
this._grid.recomputeGridSize();
}
+
+ if (scrollIndex != null && scrollIndex !== prevProps.scrollIndex) {
+ this._grid.scrollToCell({
+ rowIndex: scrollIndex,
+ columnIndex: 0
+ });
+ }
}
//
@@ -86,8 +96,6 @@ class VirtualTable extends Component {
header,
headerHeight,
rowRenderer,
- rowHeight,
- scrollIndex,
...otherProps
} = this.props;
@@ -117,11 +125,6 @@ class VirtualTable extends Component {
if (!height) {
return null;
}
-
- const finalScrollTop = scrollIndex == null ?
- scrollTop :
- scrollIndex * rowHeight;
-
return (