select cell after keyboard navigation (#21366)

* sync selected cell and active cell

* more packages
This commit is contained in:
Alan Ren
2022-12-06 08:53:42 -08:00
committed by GitHub
parent 05eb8dd448
commit bb1f5bfffe
8 changed files with 24 additions and 12 deletions

View File

@@ -104,7 +104,7 @@
"rxjs": "5.4.0",
"sanitize-html": "1.19.1",
"semver-umd": "^5.5.7",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.39",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.40",
"spdlog": "^0.13.0",
"tas-client-umd": "0.1.4",
"turndown": "^7.0.0",

View File

@@ -44,7 +44,7 @@
"sanitize-html": "1.19.1",
"semver-umd": "^5.5.7",
"spdlog": "^0.13.0",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.39",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.40",
"turndown": "^7.0.0",
"turndown-plugin-gfm": "^1.0.2",
"tas-client-umd": "0.1.4",

View File

@@ -32,7 +32,7 @@
"rxjs": "5.4.0",
"sanitize-html": "1.19.1",
"semver-umd": "^5.5.7",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.39",
"slickgrid": "github:Microsoft/SlickGrid.ADS#2.3.40",
"turndown": "^7.0.0",
"turndown-plugin-gfm": "^1.0.2",
"tas-client-umd": "0.1.4",

View File

@@ -442,9 +442,9 @@ semver-umd@^5.5.7:
resolved "https://registry.yarnpkg.com/semver-umd/-/semver-umd-5.5.7.tgz#966beb5e96c7da6fbf09c3da14c2872d6836c528"
integrity sha512-XgjPNlD0J6aIc8xoTN6GQGwWc2Xg0kq8NzrqMVuKG/4Arl6ab1F8+Am5Y/XKKCR+FceFr2yN/Uv5ZJBhRyRqKg==
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.39":
version "2.3.39"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/4ead9291ec4aab107767940ab0a6eac1455e0627"
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.40":
version "2.3.40"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/e6d99d4220d576406a244b5c6aaacebefaab491c"
source-map@^0.6.1:
version "0.6.1"

View File

@@ -904,9 +904,9 @@ simple-get@^4.0.0:
once "^1.3.1"
simple-concat "^1.0.0"
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.39":
version "2.3.39"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/4ead9291ec4aab107767940ab0a6eac1455e0627"
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.40":
version "2.3.40"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/e6d99d4220d576406a244b5c6aaacebefaab491c"
smart-buffer@^4.2.0:
version "4.2.0"

View File

@@ -45,6 +45,7 @@ export class CellSelectionModel<T> implements Slick.SelectionModel<T, Array<Slic
public init(grid: Slick.Grid<T>) {
this.grid = grid;
this._handler.subscribe(this.grid.onKeyDown, (e: DOMEvent) => this.handleKeyDown(e as KeyboardEvent));
this._handler.subscribe(this.grid.onAfterKeyboardNavigation, (e: Event) => this.handleAfterKeyboardNavigationEvent());
this._handler.subscribe(this.grid.onClick, (e: DOMEvent, args: Slick.OnClickEventArgs<T>) => this.handleCellClick(e as MouseEvent, args));
this._handler.subscribe(this.grid.onHeaderClick, (e: DOMEvent, args: Slick.OnHeaderClickEventArgs<T>) => this.handleHeaderClick(e as MouseEvent, args));
this.grid.registerPlugin(this.selector);
@@ -334,4 +335,11 @@ export class CellSelectionModel<T> implements Slick.SelectionModel<T, Array<Slic
e.stopPropagation();
}
}
private handleAfterKeyboardNavigationEvent(): void {
const activeCell = this.grid.getActiveCell();
if (activeCell) {
this.setSelectedRanges([new Slick.Range(activeCell.row, activeCell.cell)]);
}
}
}

View File

@@ -1233,6 +1233,7 @@ declare namespace Slick {
public onCellCssStylesChanged: Slick.Event<OnCellCssStylesChangedEventArgs<T>>;
public onViewportChanged: Slick.Event<OnViewportChangedEventArgs<T>>;
public onRendered: Slick.Event<OnRenderedEventArgs<T>>;
public onAfterKeyboardNavigation: Slick.Event<OnAfterKeyboardNavigationEventArgs<T>>;
// #endregion Events
// #region Plugins
@@ -1451,6 +1452,9 @@ declare namespace Slick {
endRow: number;
}
export interface OnAfterKeyboardNavigationEventArgs<T extends SlickData> extends GridEventArgs<T> {
}
export interface SortColumn<T extends SlickData> {
sortCol: Column<T>;
sortAsc: boolean;

View File

@@ -9526,9 +9526,9 @@ slice-ansi@^2.1.0:
astral-regex "^1.0.0"
is-fullwidth-code-point "^2.0.0"
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.39":
version "2.3.39"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/4ead9291ec4aab107767940ab0a6eac1455e0627"
"slickgrid@github:Microsoft/SlickGrid.ADS#2.3.40":
version "2.3.40"
resolved "https://codeload.github.com/Microsoft/SlickGrid.ADS/tar.gz/e6d99d4220d576406a244b5c6aaacebefaab491c"
smart-buffer@^4.2.0:
version "4.2.0"