From 2f72ed17b7b4e48a73bec310e99a067cd3be0c81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adomas=20Ven=C4=8Dkauskas?= Date: Wed, 3 Jun 2020 11:52:02 +0300 Subject: [PATCH] Ensure columns with different visibility group retain their config --- chrome/content/zotero/components/virtualized-table.jsx | 6 ++++++ chrome/content/zotero/containers/itemTree.jsx | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/chrome/content/zotero/components/virtualized-table.jsx b/chrome/content/zotero/components/virtualized-table.jsx index e199149341..69874c675f 100644 --- a/chrome/content/zotero/components/virtualized-table.jsx +++ b/chrome/content/zotero/components/virtualized-table.jsx @@ -827,6 +827,12 @@ class VirtualizedTable extends React.Component { this._jsWindow.destroy(); } + componentDidUpdate(prevProps) { + if (this.props.id !== prevProps.id) { + this._columns = new Columns(this); + } + } + _setAlternatingRows() { if (this.props.alternatingRowColors) { this._jsWindow.innerElem.style.background = ` diff --git a/chrome/content/zotero/containers/itemTree.jsx b/chrome/content/zotero/containers/itemTree.jsx index f15224cc20..b318770280 100644 --- a/chrome/content/zotero/containers/itemTree.jsx +++ b/chrome/content/zotero/containers/itemTree.jsx @@ -2761,13 +2761,14 @@ var ItemTree = class ItemTree extends LibraryTree { } const visibilityGroup = this.collectionTreeRow.visibilityGroup; - const prefKey = this.id + "-" + visibilityGroup; + const prefKey = this.id; if (this._columnsId == prefKey) { return this._columns; } this._columnsId = prefKey; this._columns = []; + this._columnPrefs = null; let columnsSettings = this._getColumnPrefs();