Use max column width when auto-sizing columns (#4394)

This commit is contained in:
Matt Irvine
2019-03-12 14:03:37 -07:00
committed by GitHub
parent 53a94cc7bb
commit e783aeab66
4 changed files with 9 additions and 4 deletions

View File

@@ -380,7 +380,7 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
};
}))
};
self.plugins.push([rowNumberColumn, new AutoColumnSize(), new AdditionalKeyBindings()]);
self.plugins.push([rowNumberColumn, new AutoColumnSize({ maxWidth: this.configurationService.getValue<number>('resultsGrid.maxColumnWidth') }), new AdditionalKeyBindings()]);
self.dataSet = dataSet;
// Create a dataSet to render without rows to reduce DOM size

View File

@@ -503,7 +503,7 @@ class GridTable<T> extends Disposable implements IView {
this.table = this._register(new Table(tableContainer, { dataProvider: this.dataProvider, columns: this.columns }, tableOptions));
this.table.setSelectionModel(this.selectionModel);
this.table.registerPlugin(new MouseWheelSupport());
this.table.registerPlugin(new AutoColumnSize({ autoSizeOnRender: !this.state.columnSizes && this.configurationService.getValue('resultsGrid.autoSizeColumns') }));
this.table.registerPlugin(new AutoColumnSize({ autoSizeOnRender: !this.state.columnSizes && this.configurationService.getValue('resultsGrid.autoSizeColumns'), maxWidth: this.configurationService.getValue<number>('resultsGrid.maxColumnWidth') }));
this.table.registerPlugin(copyHandler);
this.table.registerPlugin(this.rowNumberColumn);
this.table.registerPlugin(new AdditionalKeyBindings());

View File

@@ -66,6 +66,11 @@ const resultsGridConfiguration: IConfigurationNode = {
type: 'boolean',
default: true,
description: nls.localize('autoSizeColumns', "Auto size the columns width on inital results. Could have performance problems with large number of columns or large cells")
},
'resultsGrid.maxColumnWidth': {
type: 'number',
default: 212,
description: nls.localize('maxColumnWidth', "The maximum width in pixels for auto-sized columns")
}
}
};