igniteui-angular 21.2.12 → 21.2.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3683,7 +3683,12 @@ class IgxGridBaseDirective {
3683
3683
  this.summaryService.clearSummaryCache(args);
3684
3684
  });
3685
3685
  this.subscribeToTransactions();
3686
- this.scrollNotify.pipe(filter(() => !this._init), throttle(() => this.throttleTime$.pipe(take(1), switchMap(time => timer(time, this.throttleScheduler)))), destructor)
3686
+ this.scrollNotify.pipe(filter(() => !this._init), throttle(() => this.throttleTime$.pipe(take(1), switchMap(time => timer(time, this.throttleScheduler))),
3687
+ // `trailing: true` ensures the final settle position of a fast momentum
3688
+ // scroll is processed; otherwise the last scroll events are dropped and the
3689
+ // rows stay frozen at an intermediate startIndex while the scrollbar is at top.
3690
+ // `leading: true` keeps the immediate response on scroll start.
3691
+ { leading: true, trailing: true }), destructor)
3687
3692
  .subscribe((event) => {
3688
3693
  this.verticalScrollHandler(event);
3689
3694
  });
@@ -5405,6 +5410,15 @@ class IgxGridBaseDirective {
5405
5410
  if (!sumExistingWidths && !columnsToSize) {
5406
5411
  return '0px';
5407
5412
  }
5413
+ // When the grid has no measurable width, calculateGridWidth() falls back to the
5414
+ // sum of its column widths and sets isColumnWidthSum. If all visible columns
5415
+ // already have explicit or constrained widths, columnsToSize is 0 and
5416
+ // computedWidth equals sumExistingWidths, resulting in 0 / 0 = NaN.
5417
+ // Return the "0px" sentinel so _derivePossibleWidth() preserves the existing
5418
+ // valid column widths.
5419
+ if (columnsToSize <= 0 && this.isColumnWidthSum) {
5420
+ return '0px';
5421
+ }
5408
5422
  computedWidth -= this.featureColumnsWidth();
5409
5423
  const columnWidth = !Number.isFinite(sumExistingWidths) ?
5410
5424
  computedWidth / columnsToSize :
@@ -7187,6 +7201,9 @@ class IgxGridBaseDirective {
7187
7201
  if (colResized) {
7188
7202
  this.resetCachedWidths();
7189
7203
  this.cdr.detectChanges();
7204
+ // Rebuild master's sizesCache once from updated calcPixelWidth values
7205
+ this.headerContainer.resolveDataDiff();
7206
+ this._horizontalForOfs.forEach(vfor => vfor.resolveDataDiff());
7190
7207
  }
7191
7208
  if (this.isColumnWidthSum) {
7192
7209
  this.calcWidth = this.getColumnWidthSum();