Merge pull request #2123 from nextcloud/downstream-26522

Skip hidden files when counting visible files in list
This commit is contained in:
Joas Schilling 2016-11-16 19:10:35 +01:00 committed by GitHub
commit 8f38adaab1
2 changed files with 34 additions and 2 deletions

View File

@ -923,7 +923,8 @@
tr,
fileData,
newTrs = [],
isAllSelected = this.isAllSelected();
isAllSelected = this.isAllSelected(),
showHidden = this._filesConfig.get('showhidden');
if (index >= this.files.length) {
return false;
@ -947,7 +948,10 @@
}
newTrs.push(tr);
index++;
count--;
// only count visible rows
if (showHidden || !tr.hasClass('hidden-file')) {
count--;
}
}
// trigger event for newly added rows

View File

@ -1120,6 +1120,34 @@ describe('OCA.Files.FileList tests', function() {
expect(fileList.files.length).toEqual(65);
expect($('#fileList tr').length).toEqual(20);
});
it('renders the full first page despite hidden rows', function() {
filesConfig.set('showhidden', false);
var files = _.map(generateFiles(0, 23), function(data) {
return _.extend(data, {
name: '.' + data.name
});
});
// only hidden files + one visible
files.push(testFiles[0]);
fileList.setFiles(files);
expect(fileList.files.length).toEqual(25);
// render 24 hidden elements + the visible one
expect($('#fileList tr').length).toEqual(25);
});
it('renders the full first page despite hidden rows', function() {
filesConfig.set('showhidden', true);
var files = _.map(generateFiles(0, 23), function(data) {
return _.extend(data, {
name: '.' + data.name
});
});
// only hidden files + one visible
files.push(testFiles[0]);
fileList.setFiles(files);
expect(fileList.files.length).toEqual(25);
// render 20 first hidden elements as visible
expect($('#fileList tr').length).toEqual(20);
});
it('renders the second page when scrolling down (trigger nextPage)', function() {
// TODO: can't simulate scrolling here, so calling nextPage directly
fileList._nextPage(true);