diff --git a/chrome/content/zotero/advancedSearch.js b/chrome/content/zotero/advancedSearch.js index a7357f0824..4c3de23c4d 100644 --- a/chrome/content/zotero/advancedSearch.js +++ b/chrome/content/zotero/advancedSearch.js @@ -26,7 +26,7 @@ Components.utils.import("resource://gre/modules/Services.jsm"); import ItemTree from 'zotero/itemTree'; -import { getColumnDefinitionsByDataKey } from 'zotero/itemTreeColumns' +import { COLUMNS } from 'zotero/itemTreeColumns'; var ZoteroAdvancedSearch = new function() { @@ -56,11 +56,18 @@ var ZoteroAdvancedSearch = new function() { }); var elem = document.getElementById('zotero-items-tree'); + const columns = COLUMNS.map((column) => { + column = Object.assign({}, column); + column.hidden = !['title', 'firstCreator'].includes(column.dataKey); + return column; + }); this.itemsView = await ItemTree.init(elem, { id: "advanced-search", dragAndDrop: true, + persistColumns: true, + columnPicker: true, onActivate: this.onItemActivate.bind(this), - columns: getColumnDefinitionsByDataKey(["title", "firstCreator"]), + columns, }); // A minimal implementation of Zotero.CollectionTreeRow diff --git a/chrome/content/zotero/itemTree.jsx b/chrome/content/zotero/itemTree.jsx index d4ecf2d126..f9253bf1b0 100644 --- a/chrome/content/zotero/itemTree.jsx +++ b/chrome/content/zotero/itemTree.jsx @@ -3200,7 +3200,7 @@ var ItemTree = class ItemTree extends LibraryTree { if (this.props.persistColumns) { if (column.disabledIn && column.disabledIn.includes(visibilityGroup)) continue;; const columnSettings = columnsSettings[column.dataKey]; - if (!columnSettings) { + if (!columnSettings && this.id === 'main') { column = this._setLegacyColumnSettings(column); }