Skip to content

Commit b423e48

Browse files
MKirovaMKirova
authored andcommitted
chore(*): Apply only user-set min-width as initial constraint.
1 parent 4ef52bb commit b423e48

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

projects/igniteui-angular/src/lib/grids/columns/column.component.ts

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -944,6 +944,15 @@ export class IgxColumnComponent implements AfterContentInit, OnDestroy, ColumnTy
944944
return isPercentageWidth ? parseFloat(this.minWidth) / 100 * gridAvailableSize : parseFloat(this.minWidth);
945945
}
946946

947+
/**
948+
* @hidden
949+
*/
950+
public get userSetMinWidthPx() {
951+
const gridAvailableSize = this.grid.calcWidth;
952+
const isPercentageWidth = this._defaultMinWidth && typeof this._defaultMinWidth === 'string' && this._defaultMinWidth.indexOf('%') !== -1;
953+
return isPercentageWidth ? parseFloat(this._defaultMinWidth) / 100 * gridAvailableSize : parseFloat(this._defaultMinWidth);
954+
}
955+
947956
/**
948957
* @hidden
949958
*/
@@ -1822,7 +1831,7 @@ export class IgxColumnComponent implements AfterContentInit, OnDestroy, ColumnTy
18221831
/**
18231832
* @hidden
18241833
*/
1825-
protected _maxWidth = '';
1834+
protected _maxWidth;
18261835
/**
18271836
* @hidden
18281837
*/
@@ -2579,9 +2588,9 @@ export class IgxColumnComponent implements AfterContentInit, OnDestroy, ColumnTy
25792588
if (this.maxWidth && newSize > this.maxWidthPx) {
25802589
this.widthConstrained = true;
25812590
return this.maxWidthPx;
2582-
} else if (this.minWidth && newSize < this.minWidthPx) {
2591+
} else if (this.minWidth && newSize < this.userSetMinWidthPx) {
25832592
this.widthConstrained = true;
2584-
return this.minWidthPx;
2593+
return this.userSetMinWidthPx;
25852594
} else {
25862595
this.widthConstrained = false;
25872596
return newSize;
@@ -2597,7 +2606,7 @@ export class IgxColumnComponent implements AfterContentInit, OnDestroy, ColumnTy
25972606
const isPercentageWidth = colWidth && typeof colWidth === 'string' && colWidth.indexOf('%') !== -1;
25982607
const isAutoWidth = colWidth && typeof colWidth === 'string' && colWidth === 'fit-content';
25992608
if (isPercentageWidth && this.grid.isColumnWidthSum) {
2600-
this._calcWidth = this.minWidthPx ?? this.grid.minColumnWidth;
2609+
this._calcWidth = this.userSetMinWidthPx ? this.userSetMinWidthPx : this.grid.minColumnWidth;
26012610
} else if (isPercentageWidth) {
26022611
const currentCalcWidth = parseFloat(colWidth) / 100 * this.grid.calcWidth;
26032612
this._calcWidth = this.grid.calcWidth ? this.getConstrainedSizePx(currentCalcWidth) : 0;

projects/igniteui-angular/src/lib/grids/grid-base.directive.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6554,7 +6554,7 @@ export abstract class IgxGridBaseDirective implements GridType,
65546554
if (width && typeof width !== 'string') {
65556555
width = String(width);
65566556
}
6557-
const minWidth = width.indexOf('%') === -1 ? column.minWidthPx : column.minWidthPercent;
6557+
const minWidth = width.indexOf('%') === -1 ? column.userSetMinWidthPx : column.minWidthPercent;
65586558
const maxWidth = width.indexOf('%') === -1 ? column.maxWidthPx : column.maxWidthPercent;
65596559
if (column.hidden) {
65606560
return width;
@@ -7336,8 +7336,8 @@ export abstract class IgxGridBaseDirective implements GridType,
73367336
let maxSize = Math.ceil(Math.max(...cellsContentWidths)) + 1;
73377337
if (col.maxWidth && maxSize > col.maxWidthPx) {
73387338
maxSize = col.maxWidthPx;
7339-
} else if (maxSize < col.minWidthPx) {
7340-
maxSize = col.minWidthPx;
7339+
} else if (maxSize < col.userSetMinWidthPx) {
7340+
maxSize = col.userSetMinWidthPx;
73417341
}
73427342
col.autoSize = maxSize;
73437343
col.resetCaches();

0 commit comments

Comments
 (0)