From a9d530b2ea6a75038487c7c2a59f22f0a3d28f3b Mon Sep 17 00:00:00 2001 From: moisseev Date: Wed, 7 Jun 2023 13:03:35 +0300 Subject: [PATCH] Fix score column width and position reset on restart Issue: #28 --- experiments/scoreColumn.js | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/experiments/scoreColumn.js b/experiments/scoreColumn.js index f99adee..d0649ee 100644 --- a/experiments/scoreColumn.js +++ b/experiments/scoreColumn.js @@ -118,16 +118,19 @@ var scoreColumn = class extends ExtensionCommon.ExtensionAPI { .localizeMessage("spamnessColumnToolTip.label")); treeCol.setAttribute("width", "60px"); - const splitter = document.createXULElement("splitter"); - splitter.setAttribute("id", "spamScoreColSplitter"); - splitter.classList.add("tree-splitter"); - splitter.setAttribute("resizeafter", "farthest"); - splitter.style["-moz-box-ordinal-group"] = 42; - const threadCols = document.getElementById("threadCols"); - const threadCol = document.getElementById("threadCol"); - threadCols.insertBefore(treeCol, threadCol); - threadCols.insertBefore(splitter, threadCol); + threadCols.appendChild(treeCol); + + // Restore persistent attributes. TB bug 1607575 and 1612055. + const attributes = Services.xulStore.getAttributeEnumerator(document.URL, columnId); + for (const attribute of attributes) { + const value = Services.xulStore.getValue(document.URL, columnId, attribute); + if (attribute === "ordinal") { + treeCol.ordinal = value; + } else { + treeCol.setAttribute(attribute, value); + } + } })(); Services.obs.addObserver(RspamdSpamnessColumn.dbObserver, "MsgCreateDBView", false);