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 { IColorTheme } from 'vs/platform/theme/common/themeService';
import { IAdsTelemetryService } from 'sql/platform/telemetry/common/telemetry';
import { attachTableFilterStyler } from 'sql/platform/theme/common/styler';
import { IAccessibilityService } from 'vs/platform/accessibility/common/accessibility';
import { IQuickInputService } from 'vs/platform/quickinput/common/quickInput';
export const NOTEBOOKSVIEW_SELECTOR: string = 'notebooksview-component';
@@ -109,7 +110,8 @@ export class NotebooksViewComponent extends JobManagementView implements OnInit,
@Inject(IDashboardService) _dashboardService: IDashboardService,
@Inject(IAdsTelemetryService) private _telemetryService: IAdsTelemetryService,
@Inject(IContextViewService) private _contextViewService: IContextViewService,
@Inject(IAccessibilityService) private _accessibilityService: IAccessibilityService
@Inject(IAccessibilityService) private _accessibilityService: IAccessibilityService,
@Inject(IQuickInputService) private _quickInputService: IQuickInputService
) {
super(commonService, _dashboardService, contextMenuService, keybindingService, instantiationService, _agentViewComponent);
let notebookCacheObjectMap = this._jobManagementService.notebookCacheObjectMap;
@@ -189,7 +191,7 @@ export class NotebooksViewComponent extends JobManagementView implements OnInit,
jQuery(this._gridEl.nativeElement).empty();
jQuery(this.actionBarContainer.nativeElement).empty();
this.initActionBar();
this._table = this._register(new Table(this._gridEl.nativeElement, this._accessibilityService, { columns }, options));
this._table = this._register(new Table(this._gridEl.nativeElement, this._accessibilityService, this._quickInputService, { columns }, options));
this._table.grid.setData(this.dataView, true);
this._table.grid.onClick.subscribe((e, args) => {
let notebook = self.getNotebook(args);