diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.spec.ts b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.spec.ts index a4e766c887..bf02fa0a36 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.spec.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.spec.ts @@ -972,4 +972,11 @@ describe('DocumentList', () => { expect(documentList.reload).toHaveBeenCalledTimes(2); }); + + it('should reset pagination when switching sources', () => { + spyOn(documentList, 'resetPagination').and.callThrough(); + documentList.loadFolderByNodeId('-trashcan-'); + documentList.loadFolderByNodeId('-sites-'); + expect(documentList.resetPagination).toHaveBeenCalledTimes(2); + }); }); diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.ts b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.ts index 3e20ab60ab..50ac487412 100644 --- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.ts +++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.component.ts @@ -404,7 +404,9 @@ export class DocumentListComponent implements OnInit, OnChanges, AfterContentIni // gets folder node and its content loadFolderByNodeId(nodeId: string) { this.loading = true; + this.resetSelection(); + this.resetPagination(); if (nodeId === '-trashcan-') { this.loadTrashcan(); @@ -421,7 +423,6 @@ export class DocumentListComponent implements OnInit, OnChanges, AfterContentIni .getFolderNode(nodeId).then(node => { this.folderNode = node; this.currentFolderId = node.id; - this.skipCount = 0; this.currentNodeAllowableOperations = node['allowableOperations'] ? node['allowableOperations'] : []; this.loadFolderNodesByFolderNodeId(node.id, this.pageSize, this.skipCount).catch(err => this.error.emit(err)); }) @@ -467,6 +468,10 @@ export class DocumentListComponent implements OnInit, OnChanges, AfterContentIni this.selection = []; } + resetPagination() { + this.skipCount = 0; + } + private loadTrashcan(): void { const options = { include: [ 'path', 'properties' ],