File tree Expand file tree Collapse file tree 3 files changed +31
-5
lines changed
Expand file tree Collapse file tree 3 files changed +31
-5
lines changed Original file line number Diff line number Diff line change @@ -46,19 +46,19 @@ <h1>Basic example</h1>
4646 >
4747 < vscode-table-header slot ="header ">
4848 < vscode-table-header-cell min-width ="30 "
49- > id </ vscode-table-header-cell
49+ > Id </ vscode-table-header-cell
5050 >
5151 < vscode-table-header-cell min-width ="70 "
52- > firstname </ vscode-table-header-cell
52+ > First name </ vscode-table-header-cell
5353 >
5454 < vscode-table-header-cell min-width ="70 "
55- > lastname </ vscode-table-header-cell
55+ > Last name </ vscode-table-header-cell
5656 >
5757 < vscode-table-header-cell min-width ="70 "
58- > email </ vscode-table-header-cell
58+ > Email </ vscode-table-header-cell
5959 >
6060 < vscode-table-header-cell min-width ="70 "
61- > company </ vscode-table-header-cell
61+ > Company </ vscode-table-header-cell
6262 >
6363 </ vscode-table-header >
6464 < vscode-table-body slot ="body ">
Original file line number Diff line number Diff line change @@ -36,6 +36,7 @@ export class VscodeTableHeaderCell extends VscElement {
3636 this . dispatchEvent (
3737 new CustomEvent ( 'vsc-table-change-min-column-width' , {
3838 detail : { columnIndex : this . index , propertyValue : this . minWidth } ,
39+ bubbles : true ,
3940 } ) as VscTableChangeMinColumnWidthEvent
4041 ) ;
4142 }
@@ -54,4 +55,8 @@ declare global {
5455 interface HTMLElementTagNameMap {
5556 'vscode-table-header-cell' : VscodeTableHeaderCell ;
5657 }
58+
59+ interface GlobalEventHandlersEventMap {
60+ 'vsc-table-change-min-column-width' : VscTableChangeMinColumnWidthEvent ;
61+ }
5762}
Original file line number Diff line number Diff line change @@ -22,6 +22,7 @@ import {
2222} from '../includes/sizes.js' ;
2323import styles from './vscode-table.styles.js' ;
2424import { ColumnResizeController } from './ColumnResizeController.js' ;
25+ import { VscTableChangeMinColumnWidthEvent } from '../vscode-table-header-cell/vscode-table-header-cell.js' ;
2526
2627/**
2728 * @tag vscode-table
@@ -191,6 +192,15 @@ export class VscodeTable extends VscElement {
191192
192193 private _columnResizeController = new ColumnResizeController ( this ) ;
193194
195+ constructor ( ) {
196+ super ( ) ;
197+
198+ this . addEventListener (
199+ 'vsc-table-change-min-column-width' ,
200+ this . _handleMinColumnWidthChange
201+ ) ;
202+ }
203+
194204 override connectedCallback ( ) : void {
195205 super . connectedCallback ( ) ;
196206
@@ -618,6 +628,17 @@ export class VscodeTable extends VscElement {
618628 this . _stopDrag ( event ) ;
619629 } ;
620630
631+ private _handleMinColumnWidthChange = (
632+ event : VscTableChangeMinColumnWidthEvent
633+ ) => {
634+ const { columnIndex, propertyValue} = event . detail ;
635+ const value = parseSizeAttributeToPercent ( propertyValue , this . _componentW ) ;
636+
637+ if ( value ) {
638+ this . _columnResizeController . setColumnMinWidthAt ( columnIndex , value ) ;
639+ }
640+ } ;
641+
621642 override render ( ) : TemplateResult {
622643 const splitterPositions = this . _columnResizeController . splitterPositions ;
623644
You can’t perform that action at this time.
0 commit comments