Adding keyboard shortcuts for column resizing in slickgrid (#21100)

* Adding column resize keyboard shortcuts in slickgrid

* Switching to standard keyboard evt

* Adding comment for the functionality

* Cleaning up code and adding more comments

* Using quick input to get column resize width

* Adding check for negative sizes

* Fixing some stuff
This commit is contained in:
Aasim Khan
2022-11-04 16:15:04 -07:00
committed by GitHub
parent e98f2e2745
commit 00b797b4f3
33 changed files with 192 additions and 62 deletions

View File

@@ -36,6 +36,7 @@ import { equals } from 'vs/base/common/arrays';
import * as DOM from 'vs/base/browser/dom';
import { onUnexpectedError } from 'vs/base/common/errors';
import { IAccessibilityService } from 'vs/platform/accessibility/common/accessibility';
import { IQuickInputService } from 'vs/platform/quickinput/common/quickInput';
export class EditDataGridPanel extends GridParentComponent {
// The time(in milliseconds) we wait before refreshing the grid.
@@ -107,7 +108,8 @@ export class EditDataGridPanel extends GridParentComponent {
@IClipboardService clipboardService: IClipboardService,
@IQueryEditorService queryEditorService: IQueryEditorService,
@ILogService logService: ILogService,
@IAccessibilityService private accessibilityService: IAccessibilityService
@IAccessibilityService private accessibilityService: IAccessibilityService,
@IQuickInputService private quickInputService: IQuickInputService
) {
super(contextMenuService, keybindingService, contextKeyService, configurationService, clipboardService, queryEditorService, logService);
this.nativeElement = document.createElement('div');
@@ -895,7 +897,7 @@ export class EditDataGridPanel extends GridParentComponent {
};
if (dataSet.columnDefinitions) {
this.table = new Table(this.nativeElement.appendChild(newGridContainer), this.accessibilityService, { dataProvider: this.gridDataProvider, columns: dataSet.columnDefinitions }, options);
this.table = new Table(this.nativeElement.appendChild(newGridContainer), this.accessibilityService, this.quickInputService, { dataProvider: this.gridDataProvider, columns: dataSet.columnDefinitions }, options);
for (let plugin of this.plugins) {
this.table.registerPlugin(plugin);
}
@@ -905,7 +907,7 @@ export class EditDataGridPanel extends GridParentComponent {
}
}
else {
this.table = new Table(this.nativeElement.appendChild(newGridContainer), this.accessibilityService);
this.table = new Table(this.nativeElement.appendChild(newGridContainer), this.accessibilityService, this.quickInputService);
}
}