Skip to content

Commit 06e1a16

Browse files
authored
Merge pull request #8554 from IgniteUI/ddincheva/summary7330-9.1
Fix: When summary position is top Ctrl+Home or Ctrl+Arrow up selects the summary cell --9.1.
2 parents 24dadc7 + ddaecfb commit 06e1a16

File tree

2 files changed

+33
-1
lines changed

2 files changed

+33
-1
lines changed

projects/igniteui-angular/src/lib/grids/grid-navigation.service.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ export class IgxGridNavigationService {
364364
}
365365

366366
protected findFirstDataRowIndex(): number {
367-
return this.grid.dataView.findIndex(rec => !this.grid.isGroupByRecord(rec) && !this.grid.isDetailRecord(rec));
367+
return this.grid.dataView.findIndex(rec => !this.grid.isGroupByRecord(rec) && !this.grid.isDetailRecord(rec) && !rec.summaries);
368368
}
369369

370370
protected findLastDataRowIndex(): number {

projects/igniteui-angular/src/lib/grids/grid/grid-summary.spec.ts

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1759,6 +1759,38 @@ describe('IgxGrid - Summaries #grid', () => {
17591759
expect(GridSummaryFunctions.getAllVisibleSummariesLength(fix)).toEqual(5);
17601760
});
17611761

1762+
it('should navigate correctly with Ctrl + ArrowUp/Home when summary position is top', () => {
1763+
grid.showSummaryOnCollapse = true;
1764+
fix.detectChanges();
1765+
1766+
grid.summaryPosition = 'top';
1767+
fix.detectChanges();
1768+
1769+
fix.detectChanges();
1770+
let cell = grid.getCellByColumn(6, 'Age');
1771+
UIInteractions.simulateClickAndSelectEvent(cell);
1772+
fix.detectChanges();
1773+
1774+
expect(cell.selected).toBe(true);
1775+
UIInteractions.triggerKeyDownEvtUponElem('Home', cell.nativeElement, true, false, false, true);
1776+
fix.detectChanges();
1777+
1778+
cell = grid.getCellByColumn(2, 'ID');
1779+
expect(cell.selected).toBe(true);
1780+
expect(cell.active).toBe(true);
1781+
1782+
cell = grid.getCellByColumn(6, 'Name');
1783+
UIInteractions.simulateClickAndSelectEvent(cell);
1784+
fix.detectChanges();
1785+
1786+
UIInteractions.triggerKeyDownEvtUponElem('ArrowUp', cell.nativeElement, true, false, false, true);
1787+
fix.detectChanges();
1788+
1789+
cell = grid.getCellByColumn(2, 'Name');
1790+
expect(cell.selected).toBe(true);
1791+
expect(cell.active).toBe(true);
1792+
});
1793+
17621794
it('should be able to enable/disable summaries at runtime', () => {
17631795
grid.getColumnByName('Age').hasSummary = false;
17641796
grid.getColumnByName('ParentID').hasSummary = false;

0 commit comments

Comments
 (0)