From 53fe3d4e48af07dd54826715cfcc1d2b38bc314d Mon Sep 17 00:00:00 2001 From: Jason Grout Date: Mon, 4 Feb 2019 10:03:20 -0800 Subject: [PATCH] Fix scrolling to a match in the grid search. --- packages/csvviewer/src/widget.ts | 20 ++++++++++---------- packages/documentsearch/tsconfig.json | 4 +--- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/packages/csvviewer/src/widget.ts b/packages/csvviewer/src/widget.ts index b55c5d1f4ef4..0879241665bd 100644 --- a/packages/csvviewer/src/widget.ts +++ b/packages/csvviewer/src/widget.ts @@ -125,12 +125,12 @@ export class GridSearchService { const minColumn = this._grid.scrollX / this._grid.baseColumnSize; const maxColumn = (this._grid.scrollX + this._grid.pageWidth) / this._grid.baseColumnSize; - const isMatchInViewport = () => { + const isInViewport = (row: number, column: number) => { return ( - this._row >= minRow && - this._row <= maxRow && - this._column >= minColumn && - this._column <= maxColumn + row >= minRow && + row <= maxRow && + column >= minColumn && + column <= maxColumn ); }; @@ -154,15 +154,15 @@ export class GridSearchService { // cell rects, not the entire grid. this._grid.repaint(); - if (!isMatchInViewport()) { + if (!isInViewport(row, col)) { // scroll the matching cell into view - let scrollX = this._grid.scrollX; - let scrollY = this._grid.scrollY; + let scrollX = 0; + let scrollY = 0; /* see also https://github.com/jupyterlab/jupyterlab/pull/5523#issuecomment-432621391 */ - for (let i = scrollY; i < row - 1; i++) { + for (let i = 0; i < row - 1; i++) { scrollY += this._grid.sectionSize('row', i); } - for (let j = scrollX; j < col - 1; j++) { + for (let j = 0; j < col - 1; j++) { scrollX += this._grid.sectionSize('column', j); } this._grid.scrollTo(scrollX, scrollY); diff --git a/packages/documentsearch/tsconfig.json b/packages/documentsearch/tsconfig.json index 0156c1f99ead..103cdc43342e 100644 --- a/packages/documentsearch/tsconfig.json +++ b/packages/documentsearch/tsconfig.json @@ -4,9 +4,7 @@ "outDir": "lib", "rootDir": "src" }, - "include": [ - "src/**/*" - ], + "include": ["src/**/*"], "references": [ { "path": "../apputils"