diff --git a/chrome/content/zotero/itemTree.jsx b/chrome/content/zotero/itemTree.jsx index 84c70d6507..b16a1a3965 100644 --- a/chrome/content/zotero/itemTree.jsx +++ b/chrome/content/zotero/itemTree.jsx @@ -2403,8 +2403,8 @@ var ItemTree = class ItemTree extends LibraryTree { row.numNotes = treeRow.numNotes() || ""; row.feed = (treeRow.ref.isFeedItem && Zotero.Feeds.get(treeRow.ref.libraryID).name) || ""; row.lastRead = row.isItem ? treeRow.ref.getItemLastRead() : ""; - row.addedBy = row.isItem && treeRow.getAddedBy(); - row.lastModifiedBy = row.isItem && treeRow.getLastModifiedBy(); + row.addedBy = row.isItem ? treeRow.getAddedBy() : ""; + row.lastModifiedBy = row.isItem ? treeRow.getLastModifiedBy() : ""; row.title = treeRow.getDisplayTitle(); const columns = this.getColumns(); diff --git a/test/tests/collectionViewItemTreeTest.js b/test/tests/collectionViewItemTreeTest.js index 817b525c38..889b5dfc5a 100644 --- a/test/tests/collectionViewItemTreeTest.js +++ b/test/tests/collectionViewItemTreeTest.js @@ -1989,6 +1989,20 @@ describe("CollectionViewItemTree", function () { assert.equal(itemsView.getRow(searchRowIndex).type, 'search'); }); + it("shouldn't show a value in Added By/Modified By for trashed collections and searches", async function () { + let collection = await createDataObject('collection', { deleted: true }); + let search = await createDataObject('search', { deleted: true }); + + await selectTrash(win); + + for (let obj of [collection, search]) { + let row = itemsView.getRowIndexByID(obj.treeViewID); + assert.isNumber(row); + assert.strictEqual(itemsView.getCellText(row, 'addedBy'), ""); + assert.strictEqual(itemsView.getCellText(row, 'lastModifiedBy'), ""); + } + }); + it("shouldn't show trashed collections or searches when an advanced search is active", async function () { let item = await createDataObject('item', { title: "advancedTrashMatch", deleted: true }); let collection = await createDataObject('collection', { name: "advancedTrashMatch", deleted: true });