Browse Source

Removal after pushes

Frank-Rainer Grahl 2 years ago
parent
commit
a7e07014d8

+ 0 - 65
comm-central/patches/1069787-spellchecker-subject-1_1-25315.patch

@@ -1,65 +0,0 @@
-# HG changeset patch
-# User Frank-Rainer Grahl <frgrahl@gmx.net>
-# Date 1664135396 -7200
-# Parent  764669cd0405e0182705d5dd7461481d5d883876
-Bug 1069787 - Don't check subject if spellchecker is not ready. r=IanN
-
-diff --git a/suite/mailnews/components/compose/content/MsgComposeCommands.js b/suite/mailnews/components/compose/content/MsgComposeCommands.js
---- a/suite/mailnews/components/compose/content/MsgComposeCommands.js
-+++ b/suite/mailnews/components/compose/content/MsgComposeCommands.js
-@@ -2396,21 +2396,29 @@ function ComposeChangeLanguage(aLang)
- 
-     // Update the document language as well.
-     // This is needed to synchronize the subject.
-     document.documentElement.setAttribute("lang", aLang);
- 
-     // Update spellchecker pref
-     Services.prefs.setCharPref("spellchecker.dictionary", aLang);
- 
--    // now check the document and the subject over again with the new dictionary
--    if (InlineSpellCheckerUI.enabled)
--    {
-+    // Now check the document and the subject over again with the new
-+    // dictionary.
-+    if (InlineSpellCheckerUI.enabled) {
-       InlineSpellCheckerUI.mInlineSpellChecker.spellCheckRange(null);
--      GetMsgSubjectElement().inputField.parentNode.spellCheckerUI.mInlineSpellChecker.spellCheckRange(null);
-+
-+      // Also force a recheck of the subject. The spell checker for the subject
-+      // isn't always ready yet. Usually throws unless the subject was selected
-+      // at least once. So don't auto-create it, hence pass 'false'.
-+      let inlineSpellChecker =
-+        GetMsgSubjectElement().editor.getInlineSpellChecker(false);
-+      if (inlineSpellChecker) {
-+        inlineSpellChecker.spellCheckRange(null);
-+      }
-     }
-   }
- }
- 
- function ToggleReturnReceipt(target)
- {
-     var msgCompFields = gMsgCompose.compFields;
-     if (msgCompFields)
-diff --git a/suite/mailnews/components/compose/content/messengercompose.xul b/suite/mailnews/components/compose/content/messengercompose.xul
---- a/suite/mailnews/components/compose/content/messengercompose.xul
-+++ b/suite/mailnews/components/compose/content/messengercompose.xul
-@@ -562,17 +562,17 @@
-                   <image class="person-icon"
-                          onclick="this.parentNode.select();"/>
-                 </textbox>
-               </listcell>
-             </listitem>
-           </listbox>
-           <hbox align="center">
-             <label value="&subject.label;" accesskey="&subject.accesskey;" control="msgSubject"/>
--            <textbox id="msgSubject" flex="1" class="toolbar" disableonsend="true"
-+            <textbox id="msgSubject" flex="1" class="toolbar" disableonsend="true" spellcheck="true"
-                      oninput="gContentChanged=true;SetComposeWindowTitle();"
-                      onkeypress="subjectKeyPress(event);" />
-           </hbox>
-         </vbox>
-         <splitter id="attachmentbucket-sizer" collapse="after"/>
-         <vbox id="attachments-box">
-           <label id="attachmentBucketText" value="&attachments.label;" crop="right"
-                  accesskey="&attachments.accesskey;" control="attachmentBucket"/>

+ 0 - 615
comm-central/patches/1392929-cc-contentprefs2-1_1-25315.patch

@@ -1,615 +0,0 @@
-# HG changeset patch
-# User Ian Neal <iann_cvs@blueyonder.co.uk>
-# Date 1663189995 -3600
-# Node ID 0ca324fbb10640c93c41c6284ef81f855cb87bc1
-# Parent  3e7fd08260e58b9ecd214f54bd7519043f71d278
-Bug 1392929 - Port Bug 886907 - Remove old synchronous contentPrefService to SeaMonkey - comm part. r=frg
-
-diff --git a/suite/base/content/viewZoomOverlay.js b/suite/base/content/viewZoomOverlay.js
---- a/suite/base/content/viewZoomOverlay.js
-+++ b/suite/base/content/viewZoomOverlay.js
-@@ -7,19 +7,16 @@
- // One of the possible values for the mousewheel.* preferences.
- // From nsEventStateManager.cpp.
- const MOUSE_SCROLL_ZOOM = 3;
- 
- /**
-  * Controls the "full zoom" setting and its site-specific preferences.
-  */
- var FullZoom = FullZoom || {
--  contentPrefs: Cc["@mozilla.org/content-pref/service;1"]
--                  .getService(Ci.nsIContentPrefService2),
--
-   // Identifies the setting in the content prefs database.
-   name: "browser.content.full-zoom",
- 
-   // The global value (if any) for the setting. Asynchronously loaded from the
-   // service when first requested, then updated by the pref change listener as
-   // it changes. If there is no global value, then this should be undefined.
-   globalValue: undefined,
- 
-@@ -46,33 +43,33 @@ var FullZoom = FullZoom || {
-   //**************************************************************************//
-   // Initialization & Destruction
- 
-   init: function FullZoom_init() {
-     // Listen for scrollwheel events so we can save scrollwheel-based changes.
-     window.addEventListener("wheel", this, true);
- 
-     // Fetch the initial global value.
--    this.contentPrefs.getGlobal(this.name, null, this);
-+    Services.contentPrefs2.getGlobal(this.name, null, this);
- 
-     // Register ourselves with the service so we know when our pref changes.
--    this.contentPrefs.addObserverForName(this.name, this);
-+    Services.contentPrefs2.addObserverForName(this.name, this);
- 
-     this._siteSpecificPref =
-       Services.prefs.getBoolPref("browser.zoom.siteSpecific");
-     this.updateBackgroundTabs =
-       Services.prefs.getBoolPref("browser.zoom.updateBackgroundTabs");
-     // Listen for changes to the browser.zoom branch so we can enable/disable
-     // updating background tabs and per-site saving and restoring of zoom levels.
-     Services.prefs.addObserver("browser.zoom.", this, true);
-   },
- 
-   destroy: function FullZoom_destroy() {
-     Services.prefs.removeObserver("browser.zoom.", this);
--    this.contentPrefs.removeObserverForName(this.name, this);
-+    Services.contentPrefs2.removeObserverForName(this.name, this);
-     window.removeEventListener("wheel", this, true);
-   },
- 
- 
-   //**************************************************************************//
-   // Event Handlers
- 
-   // nsIDOMEventListener
-@@ -135,40 +132,40 @@ var FullZoom = FullZoom || {
-         }
-         break;
-     }
-   },
- 
-   // nsIContentPrefObserver
- 
-   onContentPrefSet: function FullZoom_onContentPrefSet(aGroup, aName, aValue) {
--    if (aGroup == this.contentPrefs.extractDomain(getBrowser().currentURI.spec))
-+    if (aGroup == Services.contentPrefs2.extractDomain(getBrowser().currentURI.spec))
-       this._applyPrefToSetting(aValue);
-     else if (aGroup == null) {
-       this.globalValue = this._ensureValid(aValue);
- 
-       // If the current page doesn't have a site-specific preference,
-       // then its zoom should be set to the new global preference now that
-       // the global preference has changed.
--      var zoomValue = this.contentPrefs.getCachedByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-+      var zoomValue = Services.contentPrefs2.getCachedByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-       if (zoomValue && !zoomValue.value)
-         this._applyPrefToSetting();
-     }
-   },
- 
-   onContentPrefRemoved: function FullZoom_onContentPrefRemoved(aGroup, aName) {
--    if (aGroup == this.contentPrefs.extractDomain(getBrowser().currentURI.spec))
-+    if (aGroup == Services.contentPrefs2.extractDomain(getBrowser().currentURI.spec))
-       this._applyPrefToSetting();
-     else if (aGroup == null) {
-       this.globalValue = undefined;
- 
-       // If the current page doesn't have a site-specific preference,
-       // then its zoom should be set to the default preference now that
-       // the global preference has changed.
--      var zoomValue = this.contentPrefs.getCachedByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-+      var zoomValue = Services.contentPrefs2.getCachedByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-       if (zoomValue && !zoomValue.value)
-         this._applyPrefToSetting();
-     }
-   },
- 
-   // nsIContentPrefCallback2
- 
-   handleCompletion: function(aReason) {},
-@@ -202,21 +199,21 @@ var FullZoom = FullZoom || {
- 
-     // Image documents should always start at 1, and are not affected by prefs.
-     if (!aIsTabSwitch && aBrowser.contentDocument.mozSyntheticDocument) {
-       ZoomManager.setZoomForBrowser(aBrowser, this._ensureValid(1));
-       return;
-     }
- 
-     var loadContext = aBrowser.docShell;
--    var zoomValue = this.contentPrefs.getCachedByDomainAndName(aURI.spec, this.name, loadContext);
-+    var zoomValue = Services.contentPrefs2.getCachedByDomainAndName(aURI.spec, this.name, loadContext);
-     if (zoomValue) {
-       this._applyPrefToSetting(zoomValue.value, aBrowser);
-     } else {
--      this.contentPrefs.getByDomainAndName(aURI.spec, this.name, loadContext, {
-+      Services.contentPrefs2.getByDomainAndName(aURI.spec, this.name, loadContext, {
-         self: this,
-         value: undefined,
-         handleCompletion: function(aReason) {
-           // Check that we're still where we expect to be in case this took a
-           // while. Null check currentURI, since the window may have been
-           // destroyed before we were called.
-           if (aBrowser.currentURI && aURI.equals(aBrowser.currentURI))
-             this.self._applyPrefToSetting(this.value, aBrowser);
-@@ -299,22 +296,22 @@ var FullZoom = FullZoom || {
-   },
- 
-   _applySettingToPref: function FullZoom_applySettingToPref() {
-     if (!this.siteSpecific || window.gInPrintPreviewMode ||
-         content.document.mozSyntheticDocument)
-       return;
- 
-     var zoomLevel = ZoomManager.zoom;
--    this.contentPrefs.set(getBrowser().currentURI.spec, this.name, zoomLevel, getBrowser().docShell);
-+    Services.contentPrefs2.set(getBrowser().currentURI.spec, this.name, zoomLevel, getBrowser().docShell);
-   },
- 
-   _removePref: function FullZoom_removePref() {
-     if (!content.document.mozSyntheticDocument)
--      this.contentPrefs.removeByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-+      Services.contentPrefs2.removeByDomainAndName(getBrowser().currentURI.spec, this.name, getBrowser().docShell);
-   },
- 
- 
-   //**************************************************************************//
-   // Utilities
- 
-   _ensureValid: function FullZoom_ensureValid(aValue) {
-     if (isNaN(aValue))
-diff --git a/suite/components/dataman/content/dataman.js b/suite/components/dataman/content/dataman.js
---- a/suite/components/dataman/content/dataman.js
-+++ b/suite/components/dataman/content/dataman.js
-@@ -51,17 +51,17 @@ var gDataman = {
-       this.debug = Services.prefs.getBoolPref("data_manager.debug");
-     }
-     catch (e) {}
-     this.bundle = document.getElementById("datamanBundle");
- 
-     Services.obs.addObserver(this, "cookie-changed");
-     Services.obs.addObserver(this, "perm-changed");
-     Services.obs.addObserver(this, "passwordmgr-storage-changed");
--    // Services.contentPrefs.addObserver(null, this);
-+    Services.contentPrefs2.addObserverForName(null, this);
-     Services.obs.addObserver(this, "satchel-storage-changed");
-     Services.obs.addObserver(this, "dom-storage-changed");
-     Services.obs.addObserver(this, "dom-storage2-changed");
- 
-     this.timer = Cc["@mozilla.org/timer;1"]
-                    .createInstance(Ci.nsITimer);
- 
-     gTabs.initialize();
-@@ -73,17 +73,17 @@ var gDataman = {
-       this.loadView(window.arguments[0])
-     }
-   },
- 
-   shutdown: function dataman_shutdown() {
-     Services.obs.removeObserver(this, "cookie-changed");
-     Services.obs.removeObserver(this, "perm-changed");
-     Services.obs.removeObserver(this, "passwordmgr-storage-changed");
--    // Services.contentPrefs.removeObserver(null, this);
-+    Services.contentPrefs2.removeObserverForName(null, this);
-     Services.obs.removeObserver(this, "satchel-storage-changed");
-     Services.obs.removeObserver(this, "dom-storage-changed");
-     Services.obs.removeObserver(this, "dom-storage2-changed");
- 
-     gDomains.shutdown();
-   },
- 
-   loadView: function dataman_loadView(aView) {
-@@ -252,21 +252,28 @@ var gDomains = {
- 
-     this.tree = document.getElementById("domainTree");
-     this.tree.view = this;
- 
-     this.selectfield = document.getElementById("typeSelect");
-     this.searchfield = document.getElementById("domainSearch");
- 
-     // global "domain"
--    this.domainObjects["*"] = {title: "*",
--                               displayTitle: "*",
--                               hasPermissions: true,
--//                               hasPreferences: Services.contentPrefs.getPrefs(null, null).enumerator.hasMoreElements(),
--                               hasFormData: true};
-+    Services.contentPrefs2.hasPrefs(null, null, {
-+      handleResult(resultPref) {
-+        gDomains.domainObjects["*"] = {title: "*",
-+                                       displayTitle: "*",
-+                                       hasPermissions: true,
-+                                       hasPreferences: resultPref.value,
-+                                       hasFormData: true};
-+      },
-+      handleCompletion: () => {
-+      },
-+    });
-+
-     this.search("");
-     if (!gDataman.viewToLoad.length)
-       this.tree.view.selection.select(0);
- 
-     let loaderInstance;
- 
-     function nextStep() {
-       loaderInstance.next();
-@@ -296,33 +303,35 @@ var gDomains = {
-         else {
-           gDomains.addDomainOrFlag(nextPermission.principal.URI.host.replace(/^\./, ""), "hasPermissions");
-         }
-       }
-       gDomains.ignoreUpdate = false;
-       gDomains.search(gDomains.searchfield.value);
-       yield setTimeout(nextStep, 0);
- 
--      // Add domains for content prefs.
--      gDataman.debugMsg("Add content prefs to domain list: " + Date.now()/1000);
--      gDomains.ignoreUpdate = true;
--      try {
--        var statement = Services.contentPrefs.DBConnection.createStatement("SELECT groups.name AS host FROM groups");
--        while (statement.executeStep()) {
--          gDataman.debugMsg("Found pref: " + statement.row["host"]);
--          let prefHost = gDomains.getDomainFromHostWithCheck(statement.row["host"]);
--          gDomains.addDomainOrFlag(prefHost, "hasPreferences");
--        }
--      }
--      finally {
--        statement.reset();
--      }
--      gDomains.ignoreUpdate = false;
--      gDomains.search(gDomains.searchfield.value);
--      yield setTimeout(nextStep, 0);
-+      let domains = [];
-+      Services.contentPrefs2.getDomains(null, {
-+        handleResult(resultPref) {
-+          domains.push(resultPref.domain);
-+        },
-+        handleCompletion: () => {
-+          // Add domains for content prefs.
-+          gDataman.debugMsg("Add content prefs to domain list: " +
-+                            Date.now()/1000);
-+          gDomains.ignoreUpdate = true;
-+          for (let domain of domains) {
-+            gDataman.debugMsg("Found pref: " + domain);
-+            let prefHost = gDomains.getDomainFromHostWithCheck(domain);
-+            gDomains.addDomainOrFlag(prefHost, "hasPreferences");
-+          }
-+          gDomains.ignoreUpdate = false;
-+          gDomains.search(gDomains.searchfield.value);
-+        },
-+      });
- 
-       // Add domains for passwords.
-       gDataman.debugMsg("Add passwords to domain list: " + Date.now()/1000);
-       gDomains.ignoreUpdate = true;
-       gPasswords.loadList();
-       for (let pSignon of gPasswords.allSignons) {
-         gDomains.addDomainOrFlag(pSignon.hostname, "hasPasswords");
-       }
-@@ -1715,52 +1724,47 @@ var gPrefs = {
- 
-   initialize: function prefs_initialize() {
-     gDataman.debugMsg("Initializing prefs panel");
-     this.tree = document.getElementById("prefsTree");
-     this.tree.view = this;
- 
-     this.removeButton = document.getElementById("prefsRemove");
- 
--    this.tree.treeBoxObject.beginUpdateBatch();
-     // Get all groups (hosts) that match the domain.
-     let domain = gDomains.selectedDomain.title;
- 
-     if (domain == "*") {
--      let enumerator = Services.contentPrefs.getPrefs(null, null).enumerator;
--      while (enumerator.hasMoreElements()) {
--        let pref = enumerator.getNext().QueryInterface(Ci.nsIProperty);
--        this.prefs.push({host: null, displayHost: "", name: pref.name,
--                         value: pref.value});
--      }
-+      domain = null;
-     }
- 
--    try {
--      var statement = Services.contentPrefs.DBConnection.createStatement("SELECT groups.name AS host FROM groups");
--
--      while (statement.executeStep()) {
--        if (gDomains.hostMatchesSelected(gDomains.getDomainFromHostWithCheck(statement.row["host"]))) {
--          // Now, get all prefs for that host.
--          let enumerator =  Services.contentPrefs.getPrefs(statement.row["host"], null).enumerator;
--          while (enumerator.hasMoreElements()) {
--            let pref = enumerator.getNext().QueryInterface(Ci.nsIProperty);
--            this.prefs.push({host: statement.row["host"],
--                             displayHost: gLocSvc.idn.convertToDisplayIDN(statement.row["host"], {}),
--                             name: pref.name,
--                             value: pref.value});
-+    let prefs = [];
-+    Services.contentPrefs2.getBySubdomain(domain, null, {
-+      handleResult(resultPref) {
-+        prefs.push(resultPref);
-+      },
-+      handleCompletion: () => {
-+        gPrefs.tree.treeBoxObject.beginUpdateBatch();
-+        gPrefs.prefs = [];
-+        for (let pref of prefs) {
-+          if (!domain) {
-+            gPrefs.prefs.push({host: null, displayHost: "", name: pref.name,
-+                               value: pref.value});
-+          }
-+          else {
-+            let display = gLocSvc.idn.convertToDisplayIDN(pref.domain, {});
-+            gPrefs.prefs.push({host: pref.domain, displayHost: display,
-+                               name: pref.name, value: pref.value});
-           }
-         }
--      }
--    }
--    finally {
--      statement.reset();
--    }
--
--    this.sort(null, false, false);
--    this.tree.treeBoxObject.endUpdateBatch();
-+
-+        gPrefs.sort(null, false, false);
-+        gPrefs.tree.treeBoxObject.endUpdateBatch();
-+      },
-+    });
-   },
- 
-   shutdown: function prefs_shutdown() {
-     gDataman.debugMsg("Shutting down prefs panel");
-     this.tree.view.selection.clearSelection();
-     this.tree.view = null;
-     this.prefs = [];
-   },
-@@ -1863,17 +1867,17 @@ var gPrefs = {
-     }
- 
-     this.tree.view.selection.clearSelection();
-     // Loop backwards so later indexes in the list don't change.
-     for (let i = selections.length - 1; i >= 0; i--) {
-       let delPref = this.prefs[selections[i]];
-       this.prefs.splice(selections[i], 1);
-       this.tree.treeBoxObject.rowCountChanged(selections[i], -1);
--      Services.contentPrefs.removePref(delPref.host, delPref.name, null);
-+      Services.contentPrefs2.removeByDomainAndName(delPref.host, delPref.name, null);
-     }
-     if (!this.prefs.length)
-       gDomains.removeDomainOrFlag(gDomains.selectedDomain.title, "hasPreferences");
-     // Select the entry after the first deleted one or the last of all entries.
-     if (selections.length && this.prefs.length)
-       this.tree.view.selection.toggleSelect(selections[0] < this.prefs.length ?
-                                             selections[0] :
-                                             this.prefs.length - 1);
-@@ -1906,44 +1910,28 @@ var gPrefs = {
-           break;
-         }
-       }
-       if (aData == "prefRemoved")
-         domainPrefs = this.prefs.length;
-     }
-     else if (aData == "prefRemoved") {
-       // See if there are any prefs left for that domain.
--      if (domain == "*") {
--        let enumerator = Services.contentPrefs.getPrefs(null, null).enumerator;
--        if (enumerator.hasMoreElements())
--          domainPrefs++;
--      }
--
--      try {
--        let sql = "SELECT groups.name AS host FROM groups";
--        var statement = Services.contentPrefs.DBConnection.createStatement(sql);
--
--        while (statement.executeStep()) {
--          if (gDomains.hostMatchesSelected(gDomains.getDomainFromHostWithCheck(statement.row["host"]))) {
--            // Now, get all prefs for that host.
--            let enumerator = Services.contentPrefs.getPrefs(statement.row["host"], null).enumerator;
--            if (enumerator.hasMoreElements())
--              domainPrefs++;
-+      Services.contentPrefs2.hasPrefs(domain != "*" ? domain : null, null, {
-+        handleResult(prefResult) {
-+          if (!prefResult.value) {
-+            gDomains.removeDomainOrFlag(domain, "hasPreferences");
-           }
--        }
--      }
--      finally {
--        statement.reset();
--      }
--
--      if (!domainPrefs)
--        gDomains.removeDomainOrFlag(domain, "hasPreferences");
-+        },
-+        handleCompletion: () => {
-+        },
-+      });
-     }
-     if (aData == "prefSet")
--        aSubject.displayHost = gLocSvc.idn.convertToDisplayIDN(aSubject.host, {});
-+      aSubject.displayHost = gLocSvc.idn.convertToDisplayIDN(aSubject.host, {});
- 
-     // Affects loaded domain and is an existing pref.
-     if (idx >= 0) {
-       if (aData == "prefSet") {
-         this.prefs[idx] = aSubject;
-         if (affectsLoaded)
-           this.tree.treeBoxObject.invalidateRow(idx);
-       }
-@@ -1967,50 +1955,31 @@ var gPrefs = {
-       // Not the loaded domain but it now has a preference.
-       else {
-         gDomains.addDomainOrFlag(domain, "hasPreferences");
-       }
-     }
-   },
- 
-   forget: function prefs_forget() {
--    let delPrefs = [];
--    try {
--      // Get all groups (hosts) that match the domain.
--      let domain = gDomains.selectedDomain.title;
--      if (domain == "*") {
--        let enumerator =  Services.contentPrefs.getPrefs(null, null).enumerator;
--        while (enumerator.hasMoreElements()) {
--          let pref = enumerator.getNext().QueryInterface(Ci.nsIProperty);
--          delPrefs.push({host: null, name: pref.name, value: pref.value});
--        }
--      }
--
--      let sql = "SELECT groups.name AS host FROM groups";
--      var statement = Services.contentPrefs.DBConnection.createStatement(sql);
--
--      while (statement.executeStep()) {
--        if (gDomains.hostMatchesSelected(gDomains.getDomainFromHostWithCheck(statement.row["host"]))) {
--          // Now, get all prefs for that host.
--          let enumerator =  Services.contentPrefs.getPrefs(statement.row["host"], null).enumerator;
--          while (enumerator.hasMoreElements()) {
--            let pref = enumerator.getNext().QueryInterface(Ci.nsIProperty);
--            delPrefs.push({host: statement.row["host"], name: pref.name, value: pref.value});
--          }
--        }
--      }
-+    let callbacks = {
-+      handleResult(resultDomain) {
-+      },
-+      handleCompletion: () => {
-+        gDomains.removeDomainOrFlag(domain, "hasPreferences");
-+      },
-+    };
-+
-+    let domain = gDomains.selectedDomain.title;
-+    if (domain == "*") {
-+      Services.contentPrefs2.removeAllGlobals(null, callbacks);
-     }
--    finally {
--      statement.reset();
-+    else {
-+      Services.contentPrefs2.removeBySubdomain(domain, null, callbacks);
-     }
--    // Loop backwards so later indexes in the list don't change.
--    for (let i = delPrefs.length - 1; i >= 0; i--) {
--      Services.contentPrefs.removePref(delPrefs[i].host, delPrefs[i].name, null);
--    }
--    gDomains.removeDomainOrFlag(gDomains.selectedDomain.title, "hasPreferences");
-   },
- 
-   // nsITreeView
-   __proto__: gBaseTreeView,
-   get rowCount() {
-     return this.prefs.length;
-   },
-   getCellText: function(aRow, aColumn) {
-diff --git a/suite/components/dataman/tests/browser_dataman_basics.js b/suite/components/dataman/tests/browser_dataman_basics.js
---- a/suite/components/dataman/tests/browser_dataman_basics.js
-+++ b/suite/components/dataman/tests/browser_dataman_basics.js
-@@ -512,18 +512,18 @@ function test_permissions_add(aWin) {
-   is(aWin.gPerms.addHost.value, "getpersonas.com",
-      "On add, the host is set correctly");
-   is(aWin.gPerms.addType.value, "",
-      "Again, no type is selected");
-   Services.obs.notifyObservers(window, TEST_DONE);
- },
- 
- function test_prefs_panel(aWin) {
--  Services.contentPrefs.setPref("my.drumbeat.org", "data_manager.test", "foo", null);
--  Services.contentPrefs.setPref("drumbeat.org", "data_manager.test", "bar", null);
-+  Services.contentPrefs2.setPref("my.drumbeat.org", "data_manager.test", "foo", null);
-+  Services.contentPrefs2.setPref("drumbeat.org", "data_manager.test", "bar", null);
-   is(aWin.gDomains.tree.view.rowCount, kPreexistingDomains + 5,
-      "The domain for prefs tests has been added from the list");
-   aWin.gDomains.tree.view.selection.select(4);
-   is(aWin.gDomains.selectedDomain.title, "drumbeat.org",
-      "For prefs tests, correct domain is selected");
-   is(aWin.gTabs.activePanel, "preferencesPanel",
-      "Preferences panel is selected");
-   is(aWin.gPrefs.tree.view.rowCount, 2,
-@@ -710,22 +710,22 @@ function test_idn(aWin) {
-      "After deleting, correctly switched to permissions panel");
-   let perm = aWin.gPerms.list.children[0];
-   is(perm.host, "bug413909." + testDomain,
-      "Permission has correct host");
-   is(perm.getAttribute("displayHost"), "bug413909." + idnDomain,
-      "Permission has correct display host");
- 
-   // Add pref with decoded IDN name.
--  Services.contentPrefs.setPref(testDomain, "data_manager.test", "foo", null);
-+  Services.contentPrefs2.setPref(testDomain, "data_manager.test", "foo", null);
-   aWin.gTabs.tabbox.selectedTab = aWin.document.getElementById("preferencesTab");
-   is(aWin.gTabs.activePanel, "preferencesPanel",
-      "Successfully switched to preferences panel for IDN tests");
-   // Add pref with encoded IDN name while panel is shown (different code path).
--  Services.contentPrefs.setPref(idnDomain, "data_manager.test2", "bar", null);
-+  Services.contentPrefs2.setPref(idnDomain, "data_manager.test2", "bar", null);
-   is(aWin.gPrefs.tree.view.getCellText(0, aWin.gPrefs.tree.columns["prefsHostCol"]),
-      idnDomain,
-      "Correct domain displayed for punycode IDN preference");
-   is(aWin.gPrefs.tree.view.getCellText(1, aWin.gPrefs.tree.columns["prefsHostCol"]),
-      idnDomain,
-      "Correct domain displayed for utf8 IDN preference");
-   aWin.gPrefs.tree.view.selection.select(0);
-   aWin.document.getElementById("prefsRemove").click();
-diff --git a/suite/components/pref/content/pref-content.js b/suite/components/pref/content/pref-content.js
---- a/suite/components/pref/content/pref-content.js
-+++ b/suite/components/pref/content/pref-content.js
-@@ -36,27 +36,25 @@ function Startup()
- 
-   /*   defaultZoom  stuff   */
- 
-   let defaultElement = document.getElementById("defaultZoom");
- 
-   defaultElement.min = Services.prefs.getIntPref("zoom.minPercent");
-   defaultElement.max = Services.prefs.getIntPref("zoom.maxPercent");
- 
--  let cps2 = Cc["@mozilla.org/content-pref/service;1"]
--               .getService(Ci.nsIContentPrefService2);
--
--  var zoomValue = cps2.getCachedGlobal("browser.content.full-zoom", null);
-+  var zoomValue = Services.contentPrefs2
-+                          .getCachedGlobal("browser.content.full-zoom", null);
-   if (zoomValue && zoomValue.value) {
-     defaultElement.value = Math.round(zoomValue.value * 100);
-     return;
-   }
- 
-   defaultElement.value = 100;
--  cps2.getGlobal("browser.content.full-zoom", null, {
-+  Services.contentPrefs2.getGlobal("browser.content.full-zoom", null, {
-     handleResult(pref) {
-       defaultElement.value = Math.round(pref.value * 100);
-     },
-     handleCompletion(reason) {}
-   });
- }
- 
- /**
-@@ -115,26 +113,25 @@ function AdjustMinZoom()
- }
- 
- /**
-  * Set default zoom.
-  */
- function SetDefaultZoom()
- {
-   let defaultElement  = document.getElementById("defaultZoom");
--  let cps2 = Cc["@mozilla.org/content-pref/service;1"]
--               .getService(Ci.nsIContentPrefService2);
- 
-   if (defaultElement.valueNumber == 100) {
--    cps2.removeGlobal("browser.content.full-zoom", null);
-+    Services.contentPrefs2.removeGlobal("browser.content.full-zoom", null);
-     return;
-   }
- 
-   let new_value = defaultElement.valueNumber / 100.;
--  cps2.setGlobal("browser.content.full-zoom", new_value, null);
-+  Services.contentPrefs2.setGlobal("browser.content.full-zoom", new_value,
-+                                   null);
- }
- 
- /**
-  * When the user toggles the layers.acceleration.disabled pref,
-  * sync its new value to the gfx.direct2d.disabled pref too.
-  */
- function updateHardwareAcceleration(aVal)
- {

+ 0 - 226
comm-central/patches/1441016-port1414390-25315.patch

@@ -1,226 +0,0 @@
-# HG changeset patch
-# User Ian Neal <iann_cvs@blueyonder.co.uk>
-# Date 1587833525 -3600
-# Parent  02a167ebc43e364e3aa0ff382493ee9c0721b5fa
-Bug 1441016 - Migrate to intl.locale.requested.locale list from general.useragent.locale. r=frg
-
-Also port the relevant parts of the following bugs to SeaMonkey:
-* Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales
-* Bug 1414390 - Add intl.locale.requested locale list to replace general.useragent.locale
-
-diff --git a/suite/components/nsSuiteGlue.js b/suite/components/nsSuiteGlue.js
---- a/suite/components/nsSuiteGlue.js
-+++ b/suite/components/nsSuiteGlue.js
-@@ -407,17 +407,17 @@ SuiteGlue.prototype = {
-   },
- 
-   /**
-    * Determine if the UI has been upgraded for this release. If not
-    * reset or migrate some user configurations depending on the migration
-    * level.
-    */
-   _migrateUI() {
--    const UI_VERSION = 9;
-+    const UI_VERSION = 10;
- 
-     // If the pref is not set this is a new or pre SeaMonkey 2.49 profile.
-     // We can't tell so we just run migration with version 0.
-     let currentUIVersion =
-       Services.prefs.getIntPref("suite.migration.version", 0);
- 
-     if (currentUIVersion >= UI_VERSION)
-       return;
-@@ -588,16 +588,41 @@ SuiteGlue.prototype = {
-           Cu.reportError(ex);
-         }
-       }
- 
-       // We might bring this back later but currently set to default.
-       Services.prefs.clearUserPref("browser.tabs.opentabfor.doubleclick");
-     }
- 
-+    // Migrate the old requested locales prefs to use the new model
-+    if (currentUIVersion < 10) {
-+      const SELECTED_LOCALE_PREF = "general.useragent.locale";
-+      const MATCHOS_LOCALE_PREF = "intl.locale.matchOS";
-+
-+      if (Services.prefs.prefHasUserValue(MATCHOS_LOCALE_PREF) ||
-+          Services.prefs.prefHasUserValue(SELECTED_LOCALE_PREF)) {
-+        if (Services.prefs.getBoolPref(MATCHOS_LOCALE_PREF, false)) {
-+          Services.locale.setRequestedLocales([]);
-+        } else {
-+          let locale = Services.prefs.getComplexValue(SELECTED_LOCALE_PREF,
-+            Ci.nsIPrefLocalizedString);
-+          if (locale) {
-+            try {
-+              Services.locale.setRequestedLocales([locale.data]);
-+            } catch (e) {
-+              /* Don't panic if the value is not a valid locale code. */
-+            }
-+          }
-+        }
-+        Services.prefs.clearUserPref(SELECTED_LOCALE_PREF);
-+        Services.prefs.clearUserPref(MATCHOS_LOCALE_PREF);
-+      }
-+    }
-+
-     // Update the migration version.
-     Services.prefs.setIntPref("suite.migration.version", UI_VERSION);
-   },
- 
-   /**
-    * Determine if the UI has been upgraded for this 2.57 or later release.
-    * If not reset or migrate some user configurations depending on the
-    * migration level.
-diff --git a/suite/components/pref/content/pref-appearance.js b/suite/components/pref/content/pref-appearance.js
---- a/suite/components/pref/content/pref-appearance.js
-+++ b/suite/components/pref/content/pref-appearance.js
-@@ -13,24 +13,25 @@ function Startup()
- }
- 
- /**
-  * From locale switcher's switch.js:
-  * Load available locales into selection menu
-  */
- function SwitchLocales_Load() {
-   var menulist = document.getElementById("switchLocales");
--  var pref = document.getElementById("general.useragent.locale");
- 
-   var cr = Cc["@mozilla.org/chrome/chrome-registry;1"]
-              .getService(Ci.nsIToolkitChromeRegistry);
- 
-   var langNames = document.getElementById("languageNamesBundle");
-   var regNames  = document.getElementById("regionNamesBundle");
- 
-+  var matched = false;
-+  var currentLocale = Services.locale.getRequestedLocale() || undefined;
-   var locales = cr.getLocalesForPackage("global");
- 
-   while (locales.hasMore()) {
-     var locale = locales.getNext();
- 
-     var parts = locale.split(/-/);
- 
-     var displayName;
-@@ -44,50 +45,37 @@ function SwitchLocales_Load() {
-           displayName += " (" + parts[1] + ")";
-         }
-       }
-     }
-     catch (e) {
-       displayName = locale;
-     }
- 
--    menulist.appendItem(displayName, locale);
-+    var item = menulist.appendItem(displayName, locale);
-+    if (!matched && currentLocale && currentLocale == locale) {
-+      matched = true;
-+      menulist.selectedItem = item;
-+    }
-   }
--  pref.setElementValue(menulist);
-+  // If somehow we have not found the current locale, select the first in list.
-+  if (!matched) {
-+    menulist.selectedIndex = 1;
-+  }
- }
- 
- /**
-- * determine the appropriate value to select
-- * go through element value, pref value and pref default value and use the first one available
-- * else fall back to the first available selection
-+ * Determine the appropriate value to set and set it.
-  */
--function SelectLocale(aElement)
--{
--  var matchItems;
--  var pref = document.getElementById(aElement.getAttribute("preference"));
--  if (pref.value) {
--    matchItems = aElement.getElementsByAttribute("value", pref.value);
--    // If the pref matches an entry that actually is in the list, use it.
--    if (matchItems.length)
--      return pref.value;
-+function SelectLocale(aElement) {
-+  var locale = aElement.value;
-+  var currentLocale = Services.locale.getRequestedLocale() || undefined;
-+  if (!currentLocale || (currentLocale && currentLocale != locale)) {
-+    Services.locale.setRequestedLocales([locale]);
-   }
--
--  if (pref.defaultValue) {
--    matchItems = aElement.getElementsByAttribute("value", pref.defaultValue);
--    // If the pref's default matches an entry that actually is in the list, use it.
--    if (matchItems.length)
--      return pref.defaultValue;
--  }
--
--  // If prefs can't point us to a valid value and something is set, leave that.
--  if (aElement.value)
--    return aElement.value;
--
--  // If somehow we still have no value, return the first value in the list
--  return aElement.firstChild.firstChild.getAttribute("value");
- }
- 
- /**
-  * When starting up, determine application and regional locale settings
-  * and add the respective strings to the prefpane labels.
-  */
- function NumberLocales_Load()
- {
-diff --git a/suite/components/pref/content/pref-appearance.xul b/suite/components/pref/content/pref-appearance.xul
---- a/suite/components/pref/content/pref-appearance.xul
-+++ b/suite/components/pref/content/pref-appearance.xul
-@@ -22,19 +22,16 @@
-                   name="browser.chrome.toolbar_style"
-                   type="int"/>
-       <preference id="browser.chrome.toolbar_tips"
-                   name="browser.chrome.toolbar_tips"
-                   type="bool"/>
-       <preference id="browser.toolbars.grippyhidden"
-                   name="browser.toolbars.grippyhidden"
-                   type="bool"/>
--      <preference id="general.useragent.locale"
--                  name="general.useragent.locale"
--                  type="string"/>
-       <preference id="intl.regional_prefs.use_os_locales"
-                   name="intl.regional_prefs.use_os_locales"
-                   type="bool"/>
-     </preferences>
- 
-     <hbox>
-       <groupbox id="generalStartupPreferences" align="start" flex="1">
-         <caption label="&onStartLegend.label;"/>
-@@ -78,18 +75,17 @@
-                 preference="browser.toolbars.grippyhidden"/>
-     </vbox>
- #endif
-     <groupbox id="switchLocaleBox" align="start">
-       <caption label="&pref.locales.title;"/>
-       <description>&selectLocale.label;</description>
- 
-       <menulist id="switchLocales"
--                preference="general.useragent.locale"
--                onsyncfrompreference="return document.getElementById('appearance_pane').SelectLocale(this);"/>
-+                onselect="SelectLocale(this);"/>
- 
-     </groupbox>
- 
-     <groupbox id="dateTimeFormatting" align="start">
-       <caption label="&dateTimeFormatting.label;"/>
-       <radiogroup id="formatLocale"
-                   preference="intl.regional_prefs.use_os_locales"
-                   orient="vertical">
-diff --git a/suite/locales/en-US/suite-l10n.js b/suite/locales/en-US/suite-l10n.js
---- a/suite/locales/en-US/suite-l10n.js
-+++ b/suite/locales/en-US/suite-l10n.js
-@@ -1,8 +1,8 @@
- # This Source Code Form is subject to the terms of the Mozilla Public
- # License, v. 2.0. If a copy of the MPL was not distributed with this
- # file, You can obtain one at http://mozilla.org/MPL/2.0/.
- 
- #filter substitution
- 
--pref("general.useragent.locale", "@AB_CD@");
-+pref("intl.locale.requested", "@AB_CD@");
- pref("spellchecker.dictionary", "@AB_CD@");

+ 0 - 30
comm-central/patches/1684772-l10n-toml-suite.patch

@@ -1,30 +0,0 @@
-# HG changeset patch
-# User Ian Neal <iann_cvs@blueyonder.co.uk>
-# Date 1609700583 0
-# Parent  667dc1ba9ebcbb1d7b46062335ad72445b453dbc
-Bug 1684772 - Remove editor l10n.toml change for obsolete suite branches. r=frg
-
-diff --git a/suite/locales/l10n.toml b/suite/locales/l10n.toml
---- a/suite/locales/l10n.toml
-+++ b/suite/locales/l10n.toml
-@@ -40,20 +40,16 @@ locales = [
-     l = "{l10n_base}/{locale}/"
-     mozilla = ".."
- 
- [[paths]]
-     reference = "suite/locales/en-US/**"
-     l10n = "{l}suite/**"
- 
- [[paths]]
--    reference = "editor/ui/locales/en-US/**"
--    l10n = "{l}editor/ui/**"
--
--[[paths]]
-     reference = "suite/branding/seamonkey/locales/en-US/**"
-     l10n = "{l}suite/branding/seamonkey/**"
- 
- [[paths]]
-     reference = "{mozilla}/services/sync/locales/en-US/**"
-     l10n = "{l}services/sync/**"
- 
- [[includes]]

+ 0 - 56
comm-central/patches/1790695-decodeimageasync-25315.patch

@@ -1,56 +0,0 @@
-# HG changeset patch
-# User Frank-Rainer Grahl <frgrahl@gmx.net>
-# Date 1663004214 -7200
-# Parent  a2ee9aad47052223e7fe93c7f2caad0c3191f990
-Bug 1790695 - Call Imagelibs decodeImageAsyncWindows using a callback. r=IanN
-
-The previous code did always draw the default icon only because the decoding is
-done async and returns the data at a later point.
-
-diff --git a/suite/modules/WindowsPreviewPerTab.jsm b/suite/modules/WindowsPreviewPerTab.jsm
---- a/suite/modules/WindowsPreviewPerTab.jsm
-+++ b/suite/modules/WindowsPreviewPerTab.jsm
-@@ -78,21 +78,40 @@ function _imageFromURI(uri, privateMode,
- 
-   try {
-     channel.QueryInterface(Ci.nsIPrivateBrowsingChannel);
-     channel.setPrivate(privateMode);
-   } catch (e) {
-     // Ignore channels which do not support nsIPrivateBrowsingChannel.
-   }
-   NetUtil.asyncFetch(channel, function(inputStream, resultCode) {
--    if (!Components.isSuccessCode(resultCode))
-+    if (!Components.isSuccessCode(resultCode)) {
-       return;
-+    }
-+
-+    const decodeCallback = {
-+      onImageReady(image, status) {
-+        if (!image) {
-+          // We failed, so use the default favicon (only if this wasn't the
-+          // default favicon).
-+          let defaultURI = PlacesUtils.favicons.defaultFavicon;
-+          if (!defaultURI.equals(uri)) {
-+            _imageFromURI(defaultURI, privateMode, callback);
-+            return;
-+          }
-+        }
-+
-+        callback(image);
-+      }
-+    };
-+
-     try {
--      let out_img = imgTools.decodeImageAsync(inputStream, channel.contentType);
--      callback(out_img);
-+      let threadManager = Cc["@mozilla.org/thread-manager;1"].getService();
-+      imgTools.decodeImageAsync(inputStream, channel.contentType,
-+                                decodeCallback, threadManager.currentThread);
-     } catch (e) {
-       // We failed, so use the default favicon (only if this wasn't the default
-       // favicon).
-       let defaultURI = PlacesUtils.favicons.defaultFavicon;
-       if (!defaultURI.equals(uri))
-         _imageFromURI(defaultURI, privateMode, callback);
-     }
-   });

+ 0 - 48
comm-central/patches/1792578-flushmemory-25315.patch

@@ -1,48 +0,0 @@
-# HG changeset patch
-# User Ian Neal <iann_cvs@blueyonder.co.uk>
-# Date 1664320891 -3600
-# Parent  92040bf84c6afcf32fd7d04618e268899227934a
-Bug 1792578 - Remove use of nsIMemory. r=frg
-
-diff --git a/suite/extensions/debugQA/content/debugQAMenuOverlay.js b/suite/extensions/debugQA/content/debugQAMenuOverlay.js
---- a/suite/extensions/debugQA/content/debugQAMenuOverlay.js
-+++ b/suite/extensions/debugQA/content/debugQAMenuOverlay.js
-@@ -36,8 +36,16 @@ function onLoadBloat()
- // Open a debug QA link from the menu in the current tab.
- function openQAUrl(aUrl)
- {
-   openUILinkIn(aUrl, "current",
-                { triggeringPrincipal:
-                    Services.scriptSecurityManager.createNullPrincipal({}),
-                });
- }
-+
-+// Flush the memory using minimizeMemoryUsage.
-+function flushMemory() {
-+  Services.obs.notifyObservers(null, "child-mmu-request");
-+  Cc["@mozilla.org/memory-reporter-manager;1"]
-+    .getService(Ci.nsIMemoryReporterManager)
-+    .minimizeMemoryUsage(() => {});
-+}
-diff --git a/suite/extensions/debugQA/content/debugQAMenuOverlay.xul b/suite/extensions/debugQA/content/debugQAMenuOverlay.xul
---- a/suite/extensions/debugQA/content/debugQAMenuOverlay.xul
-+++ b/suite/extensions/debugQA/content/debugQAMenuOverlay.xul
-@@ -85,17 +85,17 @@
-           </menupopup>
-         </menu>
- 
-         <menuseparator/>
- 
-         <menuitem label="Composer (with test page)"
-                   oncommand="NewEditorWindow('chrome://debugqa/content/EditorInitPage.html');"/>
-         <menuitem label="Flush Memory"
--                  oncommand="Cc['@mozilla.org/xpcom/memory-service;1'].getService(Ci.nsIMemory).heapMinimize(true);"/>
-+                  oncommand="flushMemory();"/>
-         <menuitem label="Show Configuration Editor"
-                   oncommand="goAbout('config');"/>
-       </menupopup>
-     </menu>
- 
-     <menu id="qaMenu" accesskey="Q" label="QA" insertbefore="menu_Help">
-       <menupopup id="qaMenuPopup">
-         <menuitem label="Getting Involved"

+ 0 - 275
comm-central/patches/1793291-help-25315.patch

@@ -1,275 +0,0 @@
-# HG changeset patch
-# User Rainer Bielefeld <RainerBielefeldNG@BielefeldUndBuss.de>
-# Date 1665267234 -7200
-# Parent  7cbd4799ce541645884f1015d5b30d8c1cd07b94
-Bug 1793291 - Correct mailnews_account_settings.xhtml. r=frg
-
-diff --git a/suite/locales/en-US/chrome/common/help/mailnews_account_settings.xhtml b/suite/locales/en-US/chrome/common/help/mailnews_account_settings.xhtml
---- a/suite/locales/en-US/chrome/common/help/mailnews_account_settings.xhtml
-+++ b/suite/locales/en-US/chrome/common/help/mailnews_account_settings.xhtml
-@@ -48,17 +48,17 @@
-     <li><a href="#junk_settings">Junk Settings</a></li>
-     <li><a href="#return_receipts">Return Receipts</a></li>
-     <li><a href="#security">Security</a></li>
-     <li><a href="#local_folders">Local Folders</a></li>
-     <li><a href="#outgoing_server">Outgoing Server (SMTP)</a></li>
-   </ul>
- </div>
- 
--<h2 id="account_settings">Mail &amp; Newsgroups Account Settings - Account
-+<h2 id="account_settings">Mail &amp; Newsgroups Account Settings – Account
-   Settings</h2>
- 
- <p>This section describes how to view or change your Account Settings, such as
-   your user name, reply-to address, and signature. If you are not already
-   viewing the Account Settings, begin from the Mail window:</p>
- 
- <ol>
-   <li>Open the Edit menu and choose Mail &amp; Newsgroups Account Settings. You
-@@ -114,17 +114,17 @@
-         &amp; news feeds account.</li>
-     </ul>
-   </li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="server_settings">Mail &amp; Newsgroups Account Settings - Server
-+<h2 id="server_settings">Mail &amp; Newsgroups Account Settings – Server
-   Settings</h2>
- 
- <p>&brandShortName; Mail &amp; Newsgroups can work with two types of mail
-   servers: IMAP and POP. If you are not sure which server type your Internet
-   service provider supports, ask your service provider. If your Internet
-   service provider supports both, the following descriptions may help you
-   choose which one to use.</p>
- 
-@@ -498,17 +498,17 @@
-     likely you might receive messages in which the text encoding (MIME charset
-     parameter) is not indicated, such as when reading messages in international
-     newsgroups.</li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="copies_and_folders">Mail &amp; Newsgroups Account Settings - Copies
-+<h2 id="copies_and_folders">Mail &amp; Newsgroups Account Settings – Copies
-   &amp; Folders</h2>
- 
- <p>This section describes the settings for sending automatic copies, for
-   storing copies of outgoing messages, for storing draft messages and message
-   templates, and where to move archived messages.</p>
- 
- <p>By default, &brandShortName; Mail &amp; Newsgroups stores copies of your
-   outgoing messages in the Sent folder for the current account.
-@@ -571,17 +571,17 @@
-     dialog box will appear when you save a draft or template to remind you
-     where &brandShortName; Mail &amp; Newsgroups is saving the draft or
-     template.</li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="addressing">Mail &amp; Newsgroups Account Settings - Composition &amp;
-+<h2 id="addressing">Mail &amp; Newsgroups Account Settings – Composition &amp;
-   Addressing</h2>
- 
- <p>You use Composition settings to choose how to format text, handle replies,
-   and how a signature you defined is included.</p>
- 
- <p>If you are not already viewing the Composition settings, begin from the Mail
-   window:</p>
- 
-@@ -598,18 +598,18 @@
-     unchecked to use the plain-text editor by default. HTML messages can
-     include formatted text, links, images, and tables, just like a web page.
-     However, some recipients may not be able to receive HTML messages.
- 
-     <p><strong>Tip</strong>: If you only want to use an editor occasionally,
-       you can hold down the Shift key while clicking the Compose or the Reply
-       button to switch to the non-default on an as-needed basis.</p>
-   </li>
--  <li><strong>Automatically quote the original message when replying</strong>: 
--    Select this to include the original message text in your reply. Use the 
-+  <li><strong>Automatically quote the original message when replying</strong>:
-+    Select this to include the original message text in your reply. Use the
-     drop-down list to select if the cursor should be positioned below or above
-     the quoted text. You can also choose the quoting to be automatically
-     selected.
-     <ul>
-       <li><strong>and place my signature</strong>: This drop-down list lets you
-         choose where you want your signature to be placed. It&apos;s only
-         applicable if you decided to <a href="#account_settings">attach a
-         signature</a> and to place the cursor above the quoted text.</li>
-@@ -861,23 +861,23 @@
-   deleted</strong>:</p>
- 
- <ul>
-   <li><strong>Don't delete any messages</strong>: Keep all messages. Never
-     delete messages automatically based on their age.</li>
-   <li><strong>Delete all but the most recent [__] messages</strong>: Enter the
-     number of messages to keep. With this setting only messages older than these
-     messages are deleted.</li>
--  <li><strong>Delete messages more than [__] days old </strong>:
-+  <li><strong>Delete messages more than [__] days old</strong>:
-     Keep all messages that arrived within the given number of days.</li>
- </ul>
- 
- <p>With the following settings you can further constrain the three options to
-   delete messages automatically. This is especially useful in combination with
--  the option to keep all messages.</p> 
-+  the option to keep all messages.</p>
- 
- <ul>
-   <li><strong>Always keep flagged messages</strong>: Use this option to deny
-     &brandShortName; to delete any messages you have flagged.</li>
-   <li><strong>Remove bodies from message more than [__] days old</strong>:
-     Select this option to retain all headers but to delete message bodies that
-     are older than the number of days you specify here (news accounts only).
-     Any option to delete the entire message based on age still applies.</li>
-@@ -888,34 +888,34 @@
- 
- <p><strong>Note:</strong> If message synchronization is enabled (for IMAP), or
-   messages are left on the server (for POP accounts), the settings apply to
-   <em>both</em> local copies and their originals on the server.</p>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="junk_settings">Mail &amp; Newsgroups Account Settings - Junk
-+<h2 id="junk_settings">Mail &amp; Newsgroups Account Settings – Junk
-   Settings</h2>
--  
-+
- <p>This section describes how to use the account junk settings. If
-   you are not currently viewing the Junk Settings, follow these steps:</p>
- 
- <ol>
-   <li>Open the Edit menu, and choose Mail &amp; Newsgroups Account Settings.
-     You see the Mail &amp; Newsgroups Account Settings dialog box.</li>
-   <li>Click the Junk Settings category for your mail account.</li>
- </ol>
- 
- <p>You use the Junk Settings panel to define your account-specific settings
-   for the adaptive mail filter. Global junk settings are changed under
-   <a href="mailnews_preferences.xhtml#junk_and_suspect_preferences">Mail &amp;
--  Newsgroups Preferences - Junk &amp; Suspect Mail</a>.</p>
--  
--<ul>  
-+  Newsgroups Preferences – Junk &amp; Suspect Mail</a>.</p>
-+
-+<ul>
-   <li><strong>Enable adaptive junk mail controls for this account</strong>:
-     Toggle this option to activate or deactivate junk mail classification.</li>
-   <li><strong>Do not mark mail as junk if the sender is in [the address
-     book chosen from all your address books available in the drop down
-     box]</strong>:
-     Choose this option to prevent messages from people you know inadvertently
-     classified as junk mail.</li>
-   <li><strong>Trust junk mail headers set by [an external junk filter
-@@ -935,17 +935,17 @@
-         old junk messages after a grace period.</li>
-     </ul>
-   </li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="return_receipts">Mail &amp; Newsgroups Account Settings - Return
-+<h2 id="return_receipts">Mail &amp; Newsgroups Account Settings – Return
-   Receipts</h2>
- 
- <p>This section describes how to use the Return Receipts account settings. If
-   you are not currently viewing the Return Receipts settings, follow these
-   steps:</p>
- 
- <ol>
-   <li>Open the Edit menu, and choose Mail &amp; Newsgroups Account Settings.
-@@ -953,24 +953,24 @@
-   <li>Click the Return Receipts category for your mail account.</li>
- </ol>
- 
- <p>You use the Return Receipts settings to define return receipt settings for
-   outgoing messages from this mail account. You also use the Return Receipt
-   settings to specify how to manage requests you receive for return receipts.
-   These settings override global return receipt preferences you specified using
-   <a href="mailnews_preferences.xhtml#return_receipts_preferences">Mail &amp;
--  Newsgroups Preferences - Return Receipts</a>.</p>
-+  Newsgroups Preferences – Return Receipts</a>.</p>
- 
- <ul>
-   <li><strong>Use my global return receipt preferences for this
-     account</strong>: By default, this account uses the return receipt
-     preferences specified by <a
-     href="mailnews_preferences.xhtml#return_receipts_preferences">Mail &amp;
--    Newsgroups Preferences - Return Receipts</a>.</li>
-+    Newsgroups Preferences – Return Receipts</a>.</li>
-   <li><strong>Customize return receipts for this account</strong>: Lets you
-     change the return receipt preferences for this account.
-     <ul>
-       <li><strong>When sending messages, always request a return
-         receipt</strong>: Enables automatic return receipt requests for all
-         outgoing messages from this mail account.</li>
-       <li><strong>Leave it in my Inbox</strong>: Return receipt
-         confirmation messages are delivered to the Inbox for this account.
-@@ -992,17 +992,17 @@
-         you want to respond to requests you receive for return receipts.</li>
-     </ul>
-   </li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="security">Mail &amp; Newsgroups Account Settings - Security</h2>
-+<h2 id="security">Mail &amp; Newsgroups Account Settings – Security</h2>
- 
- <p>This section describes how to configure the Mail &amp; Newsgroups Account
-   Settings that control mail message security. Before you do so, however, you
-   must obtain one or more mail certificates. For details, see
-   <a href="mailnews_security.xhtml">Signing &amp; Encrypting
-   Messages</a>.</p>
- 
- <p>If you are not already viewing the Security settings for your mail account,
-@@ -1097,17 +1097,17 @@
-   Compose window, click the arrow below the Security icon near the top of the
-   window and choose the encryption setting you want. For details, see <a
-   href="mailnews_security.xhtml#signing_and_encrypting_a_new_message">Signing
-   &amp; Encrypting a New Message.</a></p>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning of
-   section</a>]</p>
- 
--<h2 id="local_folders">Mail &amp; Newsgroups Account Settings - Local
-+<h2 id="local_folders">Mail &amp; Newsgroups Account Settings – Local
-   Folders</h2>
- 
- <p>Local Folders is the account where &brandShortName; Mail &amp; Newsgroups
-   saves any messages that you send while working offline. Messages you send
-   while working offline are saved in the Unsent Messages folder under Local
-   Folders. Any folders you create under the Local Folders account reside on
-   your hard disk, so Local Folders is a good place to save messages that you
-   want to keep.</p>
-@@ -1126,17 +1126,17 @@
-     account.</li>
-   <li><strong>Local directory</strong>: The location on your hard disk where
-     mail for this account is stored.</li>
- </ul>
- 
- <p>[<a href="#mail_and_newsgroups_account_settings">Return to beginning
-   of section</a>]</p>
- 
--<h2 id="outgoing_server">Mail &amp; Newsgroups Account Settings - Outgoing
-+<h2 id="outgoing_server">Mail &amp; Newsgroups Account Settings – Outgoing
-   Server (SMTP)</h2>
- 
- <p>The outgoing server will transport your outgoing mail to the intended
-   recipients.</p>
- 
- <p>If you are not already viewing the Outgoing Server (SMTP) settings, begin
-   from the Mail window:</p>
- 

+ 0 - 753
comm-central/patches/1794276-jsheaders-mailnews-25315.patch

@@ -1,753 +0,0 @@
-# HG changeset patch
-# User Frank-Rainer Grahl <frgrahl@gmx.net>
-# Date 1664201045 -7200
-# Parent  0603b7198fc802995c6b837c471c108a9efc2001
-Bug 1794276 - Fix headers in js files. suite/mailnews part. r=IanN
-
-diff --git a/suite/mailnews/components/addrbook/content/abCardOverlay.js b/suite/mailnews/components/addrbook/content/abCardOverlay.js
---- a/suite/mailnews/components/addrbook/content/abCardOverlay.js
-+++ b/suite/mailnews/components/addrbook/content/abCardOverlay.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const kNonVcardFields =
-         ["NickNameContainer", "SecondaryEmailContainer", "ScreenNameContainer",
-          "customFields", "preferDisplayName"];
- 
-diff --git a/suite/mailnews/components/addrbook/content/abCardViewOverlay.js b/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
---- a/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
-+++ b/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- //NOTE: gAddressBookBundle must be defined and set or this Overlay won't work
- 
- var gMapItURLFormat;
- 
- var gPhotoDisplayHandlers = {};
-diff --git a/suite/mailnews/components/addrbook/content/abCommon.js b/suite/mailnews/components/addrbook/content/abCommon.js
---- a/suite/mailnews/components/addrbook/content/abCommon.js
-+++ b/suite/mailnews/components/addrbook/content/abCommon.js
-@@ -1,13 +1,13 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
--
- const { IOUtils } = ChromeUtils.import("resource:///modules/IOUtils.js");
- const { MailServices } =
-   ChromeUtils.import("resource:///modules/MailServices.jsm");
- const { FileUtils } =
-   ChromeUtils.import("resource://gre/modules/FileUtils.jsm");
- const { PrivateBrowsingUtils } =
-   ChromeUtils.import("resource://gre/modules/PrivateBrowsingUtils.jsm");
- const { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
-diff --git a/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js b/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
---- a/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
-+++ b/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {encodeABTermValue, getModelQuery} = ChromeUtils.import("resource:///modules/ABQueryUtils.jsm");
- 
- var addressbook = 0;
- var composeWindow = 0;
- var msgCompFields = 0;
-diff --git a/suite/mailnews/components/addrbook/content/abTrees.js b/suite/mailnews/components/addrbook/content/abTrees.js
---- a/suite/mailnews/components/addrbook/content/abTrees.js
-+++ b/suite/mailnews/components/addrbook/content/abTrees.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- /**
-  * This file contains our implementation for various addressbook trees.  It
-  * depends on jsTreeView.js being loaded before this script is loaded.
-  */
-diff --git a/suite/mailnews/components/addrbook/content/addressbook-panel.js b/suite/mailnews/components/addrbook/content/addressbook-panel.js
---- a/suite/mailnews/components/addrbook/content/addressbook-panel.js
-+++ b/suite/mailnews/components/addrbook/content/addressbook-panel.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gIsMsgCompose = false;
- 
- function GetAbViewListener()
- {
-diff --git a/suite/mailnews/components/addrbook/content/addressbook.js b/suite/mailnews/components/addrbook/content/addressbook.js
---- a/suite/mailnews/components/addrbook/content/addressbook.js
-+++ b/suite/mailnews/components/addrbook/content/addressbook.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {encodeABTermValue, getModelQuery} = ChromeUtils.import("resource:///modules/ABQueryUtils.jsm");
- const {MailServices} = ChromeUtils.import("resource:///modules/MailServices.jsm");
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
-diff --git a/suite/mailnews/components/addrbook/content/prefs/pref-addressing.js b/suite/mailnews/components/addrbook/content/prefs/pref-addressing.js
---- a/suite/mailnews/components/addrbook/content/prefs/pref-addressing.js
-+++ b/suite/mailnews/components/addrbook/content/prefs/pref-addressing.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- function Startup()
- {
-   enableAutocomplete();
- }
-diff --git a/suite/mailnews/components/calendar/content/suite-overlay-sidebar.js b/suite/mailnews/components/calendar/content/suite-overlay-sidebar.js
---- a/suite/mailnews/components/calendar/content/suite-overlay-sidebar.js
-+++ b/suite/mailnews/components/calendar/content/suite-overlay-sidebar.js
-@@ -1,11 +1,12 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
-- * You can obtain one at http://mozilla.org/MPL/2.0/. */
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- /* import-globals-from ../../../suite/base/content/utilityOverlay.js */
- 
- var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
- 
- var ltnSuiteUtils = {
-   addStartupObserver: function() {
-     Services.obs.addObserver(this.startupObserver, "lightning-startup-done");
-diff --git a/suite/mailnews/components/compose/content/MsgComposeCommands.js b/suite/mailnews/components/compose/content/MsgComposeCommands.js
---- a/suite/mailnews/components/compose/content/MsgComposeCommands.js
-+++ b/suite/mailnews/components/compose/content/MsgComposeCommands.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- var {AppConstants} = ChromeUtils.import("resource://gre/modules/AppConstants.jsm");
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- ChromeUtils.import("resource://gre/modules/InlineSpellChecker.jsm");
- const {FolderUtils} = ChromeUtils.import("resource:///modules/FolderUtils.jsm");
-diff --git a/suite/mailnews/components/compose/content/addressingWidgetOverlay.js b/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
---- a/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
-+++ b/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {MailServices} = ChromeUtils.import("resource:///modules/MailServices.jsm");
- 
- top.MAX_RECIPIENTS = 1; /* for the initial listitem created in the XUL */
- 
-diff --git a/suite/mailnews/components/compose/content/prefs/pref-composing_messages.js b/suite/mailnews/components/compose/content/prefs/pref-composing_messages.js
---- a/suite/mailnews/components/compose/content/prefs/pref-composing_messages.js
-+++ b/suite/mailnews/components/compose/content/prefs/pref-composing_messages.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- function Startup() {
-   let value = document.getElementById("mail.compose.autosave").value;
-   EnableElementById("autoSaveInterval", value, false);
- }
-diff --git a/suite/mailnews/components/compose/content/prefs/pref-formatting.js b/suite/mailnews/components/compose/content/prefs/pref-formatting.js
---- a/suite/mailnews/components/compose/content/prefs/pref-formatting.js
-+++ b/suite/mailnews/components/compose/content/prefs/pref-formatting.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gListbox;
- var gPref;
- var gError;
- 
- function Startup()
-diff --git a/suite/mailnews/components/prefs/content/pref-junk.js b/suite/mailnews/components/prefs/content/pref-junk.js
---- a/suite/mailnews/components/prefs/content/pref-junk.js
-+++ b/suite/mailnews/components/prefs/content/pref-junk.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var { MailServices } = ChromeUtils.import(
-   "resource:///modules/MailServices.jsm"
- );
- 
-diff --git a/suite/mailnews/components/prefs/content/pref-mailnews.js b/suite/mailnews/components/prefs/content/pref-mailnews.js
---- a/suite/mailnews/components/prefs/content/pref-mailnews.js
-+++ b/suite/mailnews/components/prefs/content/pref-mailnews.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- function Startup()
- {
-   startPageCheck();
- }
-diff --git a/suite/mailnews/components/prefs/content/pref-notifications.js b/suite/mailnews/components/prefs/content/pref-notifications.js
---- a/suite/mailnews/components/prefs/content/pref-notifications.js
-+++ b/suite/mailnews/components/prefs/content/pref-notifications.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // The contents of this file will be loaded into the scope of the object
- // <prefpane id="notifications_pane">!
- 
- var {AppConstants} = ChromeUtils.import(
-diff --git a/suite/mailnews/components/prefs/content/pref-offline.js b/suite/mailnews/components/prefs/content/pref-offline.js
---- a/suite/mailnews/components/prefs/content/pref-offline.js
-+++ b/suite/mailnews/components/prefs/content/pref-offline.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // The contents of this file will be loaded into the scope of the object
- // <prefpane id="offline_pane">!
- 
- function Startup()
-diff --git a/suite/mailnews/components/prefs/content/pref-receipts.js b/suite/mailnews/components/prefs/content/pref-receipts.js
---- a/suite/mailnews/components/prefs/content/pref-receipts.js
-+++ b/suite/mailnews/components/prefs/content/pref-receipts.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gNotInToCcLabel;
- var gOutsideDomainLabel;
- var gOtherCasesLabel;
- 
-diff --git a/suite/mailnews/components/prefs/content/pref-tags.js b/suite/mailnews/components/prefs/content/pref-tags.js
---- a/suite/mailnews/components/prefs/content/pref-tags.js
-+++ b/suite/mailnews/components/prefs/content/pref-tags.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var { MailServices } = ChromeUtils.import(
-   "resource:///modules/MailServices.jsm"
- );
- 
-diff --git a/suite/mailnews/components/prefs/content/pref-viewing_messages.js b/suite/mailnews/components/prefs/content/pref-viewing_messages.js
---- a/suite/mailnews/components/prefs/content/pref-viewing_messages.js
-+++ b/suite/mailnews/components/prefs/content/pref-viewing_messages.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // The contents of this file will be loaded into the scope of the object
- // <prefpane id="viewing_messages_pane">!
- 
- function Startup()
-diff --git a/suite/mailnews/components/smime/content/msgCompSMIMEOverlay.js b/suite/mailnews/components/smime/content/msgCompSMIMEOverlay.js
---- a/suite/mailnews/components/smime/content/msgCompSMIMEOverlay.js
-+++ b/suite/mailnews/components/smime/content/msgCompSMIMEOverlay.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- 
- // Account encryption policy values:
- // const kEncryptionPolicy_Never = 0;
- // 'IfPossible' was used by ns4.
-diff --git a/suite/mailnews/components/smime/content/msgHdrViewSMIMEOverlay.js b/suite/mailnews/components/smime/content/msgHdrViewSMIMEOverlay.js
---- a/suite/mailnews/components/smime/content/msgHdrViewSMIMEOverlay.js
-+++ b/suite/mailnews/components/smime/content/msgHdrViewSMIMEOverlay.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gSignedUINode = null;
- var gEncryptedUINode = null;
- var gSMIMEContainer = null;
- var gStatusBar = null;
- var gSignedStatusPanel = null;
-diff --git a/suite/mailnews/content/ABSearchDialog.js b/suite/mailnews/content/ABSearchDialog.js
---- a/suite/mailnews/content/ABSearchDialog.js
-+++ b/suite/mailnews/content/ABSearchDialog.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {encodeABTermValue} = ChromeUtils.import("resource:///modules/ABQueryUtils.jsm");
- const {MailServices} = ChromeUtils.import("resource:///modules/MailServices.jsm");
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- 
-diff --git a/suite/mailnews/content/FilterListDialog.js b/suite/mailnews/content/FilterListDialog.js
---- a/suite/mailnews/content/FilterListDialog.js
-+++ b/suite/mailnews/content/FilterListDialog.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const { PluralForm } = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- const {MailServices} = ChromeUtils.import("resource:///modules/MailServices.jsm");
- 
- var gEditButton;
-diff --git a/suite/mailnews/content/SearchDialog.js b/suite/mailnews/content/SearchDialog.js
---- a/suite/mailnews/content/SearchDialog.js
-+++ b/suite/mailnews/content/SearchDialog.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.js");
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- 
- var searchSessionContractID = "@mozilla.org/messenger/searchSession;1";
-diff --git a/suite/mailnews/content/browserRequest.js b/suite/mailnews/content/browserRequest.js
---- a/suite/mailnews/content/browserRequest.js
-+++ b/suite/mailnews/content/browserRequest.js
-@@ -1,11 +1,12 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
-- * You can obtain one at http://mozilla.org/MPL/2.0/. */
-+ * License, v. 2.0. If a copy of the MPL was not distributed with this
-+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const wpl = Ci.nsIWebProgressListener;
- 
- var reporterListener = {
-   _isBusy: false,
-   get securityButton() {
-     delete this.securityButton;
-     return this.securityButton = document.getElementById("security-button");
-diff --git a/suite/mailnews/content/commandglue.js b/suite/mailnews/content/commandglue.js
---- a/suite/mailnews/content/commandglue.js
-+++ b/suite/mailnews/content/commandglue.js
-@@ -1,14 +1,13 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
--
- /*
-  * Command-specific code. This stuff should be called by the widgets
-  */
-  
- var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
- const { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.js");
- var { MailServices } = ChromeUtils.import(
-   "resource:///modules/MailServices.jsm"
-diff --git a/suite/mailnews/content/folderDisplay.js b/suite/mailnews/content/folderDisplay.js
---- a/suite/mailnews/content/folderDisplay.js
-+++ b/suite/mailnews/content/folderDisplay.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gFolderDisplay =
- {
-   get selectedCount()
-   {
-diff --git a/suite/mailnews/content/folderPane.js b/suite/mailnews/content/folderPane.js
---- a/suite/mailnews/content/folderPane.js
-+++ b/suite/mailnews/content/folderPane.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // Implements a tree of folders. It shows icons depending on folder type
- // and other fancy styling.
- // This is used in the main folder pane, but also some dialogs that need
- // to show a nice list of folders.
-diff --git a/suite/mailnews/content/mail-offline.js b/suite/mailnews/content/mail-offline.js
---- a/suite/mailnews/content/mail-offline.js
-+++ b/suite/mailnews/content/mail-offline.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var gOfflinePromptsBundle;
- var gOfflineManager;
- 
- function MailOfflineStateChanged(goingOffline)
- {
-diff --git a/suite/mailnews/content/mail3PaneWindowCommands.js b/suite/mailnews/content/mail3PaneWindowCommands.js
---- a/suite/mailnews/content/mail3PaneWindowCommands.js
-+++ b/suite/mailnews/content/mail3PaneWindowCommands.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- /**
-  * Functionality for the main application window (aka the 3pane) usually
-  * consisting of folder pane, thread pane and message pane.
-  */
-diff --git a/suite/mailnews/content/mailCommands.js b/suite/mailnews/content/mailCommands.js
---- a/suite/mailnews/content/mailCommands.js
-+++ b/suite/mailnews/content/mailCommands.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- const { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.js");
- 
- /**
-  * Get the identity that most likely is the best one to use, given the hint.
-diff --git a/suite/mailnews/content/mailContextMenus.js b/suite/mailnews/content/mailContextMenus.js
---- a/suite/mailnews/content/mailContextMenus.js
-+++ b/suite/mailnews/content/mailContextMenus.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {MailServices} = ChromeUtils.import("resource:///modules/MailServices.jsm");
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- const {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- 
-diff --git a/suite/mailnews/content/mailOverlay.js b/suite/mailnews/content/mailOverlay.js
---- a/suite/mailnews/content/mailOverlay.js
-+++ b/suite/mailnews/content/mailOverlay.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- function openNewCardDialog()
- {
-   window.openDialog("chrome://messenger/content/addressbook/abNewCardDialog.xul",
-                     "", "chrome,modal,resizable=no,centerscreen");
-diff --git a/suite/mailnews/content/mailTasksOverlay.js b/suite/mailnews/content/mailTasksOverlay.js
---- a/suite/mailnews/content/mailTasksOverlay.js
-+++ b/suite/mailnews/content/mailTasksOverlay.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var { MailServices } = ChromeUtils.import(
-   "resource:///modules/MailServices.jsm"
- );
- 
-diff --git a/suite/mailnews/content/mailViewList.js b/suite/mailnews/content/mailViewList.js
---- a/suite/mailnews/content/mailViewList.js
-+++ b/suite/mailnews/content/mailViewList.js
-@@ -1,14 +1,13 @@
--/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
--
- var gMailListView;
- var gListBox;
- var gEditButton;
- var gDeleteButton;
- var gMailViewListController =
- {
-   supportsCommand: function(aCommand)
-   {
-diff --git a/suite/mailnews/content/mailViewSetup.js b/suite/mailnews/content/mailViewSetup.js
---- a/suite/mailnews/content/mailViewSetup.js
-+++ b/suite/mailnews/content/mailViewSetup.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var nsMsgSearchScope = Ci.nsMsgSearchScope;
- var gMailView = null;
- 
- var dialog;
- 
-diff --git a/suite/mailnews/content/mailWindow.js b/suite/mailnews/content/mailWindow.js
---- a/suite/mailnews/content/mailWindow.js
-+++ b/suite/mailnews/content/mailWindow.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
-  //This file stores variables common to mail windows
- 
- var messenger;
- var statusFeedback;
-diff --git a/suite/mailnews/content/mailWindowOverlay.js b/suite/mailnews/content/mailWindowOverlay.js
---- a/suite/mailnews/content/mailWindowOverlay.js
-+++ b/suite/mailnews/content/mailWindowOverlay.js
-@@ -1,10 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
--/* vim: set ts=2 sw=2 sts=2 et :*/
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- var {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- var {FeedUtils} = ChromeUtils.import("resource:///modules/FeedUtils.jsm");
- var { FolderUtils } = ChromeUtils.import("resource:///modules/FolderUtils.jsm");
-diff --git a/suite/mailnews/content/messageWindow.js b/suite/mailnews/content/messageWindow.js
---- a/suite/mailnews/content/messageWindow.js
-+++ b/suite/mailnews/content/messageWindow.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.js");
- 
- /* This is where functions related to the standalone message window are kept */
- 
- // from MailNewsTypes.h
-diff --git a/suite/mailnews/content/msgFolderPickerOverlay.js b/suite/mailnews/content/msgFolderPickerOverlay.js
---- a/suite/mailnews/content/msgFolderPickerOverlay.js
-+++ b/suite/mailnews/content/msgFolderPickerOverlay.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.jsm");
- 
- var gMessengerBundle;
- 
-diff --git a/suite/mailnews/content/msgHdrViewOverlay.js b/suite/mailnews/content/msgHdrViewOverlay.js
---- a/suite/mailnews/content/msgHdrViewOverlay.js
-+++ b/suite/mailnews/content/msgHdrViewOverlay.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var {XPCOMUtils} = ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
- var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
- const {GlodaUtils} = ChromeUtils.import("resource:///modules/gloda/utils.js");
- 
-diff --git a/suite/mailnews/content/msgMail3PaneWindow.js b/suite/mailnews/content/msgMail3PaneWindow.js
---- a/suite/mailnews/content/msgMail3PaneWindow.js
-+++ b/suite/mailnews/content/msgMail3PaneWindow.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- /* This is where functions related to the 3 pane window are kept */
- const { MailUtils } = ChromeUtils.import("resource:///modules/MailUtils.js");
- const {msgDBCacheManager} = ChromeUtils.import("resource:///modules/msgDBCacheManager.js");
- const {PeriodicFilterManager} = ChromeUtils.import("resource:///modules/PeriodicFilterManager.jsm");
-diff --git a/suite/mailnews/content/msgViewNavigation.js b/suite/mailnews/content/msgViewNavigation.js
---- a/suite/mailnews/content/msgViewNavigation.js
-+++ b/suite/mailnews/content/msgViewNavigation.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- /*  This file contains the js functions necessary to implement view navigation within the 3 pane. */
- 
- const {FolderUtils} = ChromeUtils.import("resource:///modules/FolderUtils.jsm");
- 
-diff --git a/suite/mailnews/content/msgViewPickerOverlay.js b/suite/mailnews/content/msgViewPickerOverlay.js
---- a/suite/mailnews/content/msgViewPickerOverlay.js
-+++ b/suite/mailnews/content/msgViewPickerOverlay.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // menuitem value constants
- // tag views have kViewTagMarker + their key as value
- const kViewItemAll         = 0;
- const kViewItemUnread      = 1;
-diff --git a/suite/mailnews/content/nsDragAndDrop.js b/suite/mailnews/content/nsDragAndDrop.js
---- a/suite/mailnews/content/nsDragAndDrop.js
-+++ b/suite/mailnews/content/nsDragAndDrop.js
-@@ -1,10 +1,9 @@
--// -*- indent-tabs-mode: nil; js-indent-level: 2 -*-
--
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- ////////////////////////////////////////////////////////////////////////
- //
- // USE OF THIS API FOR DRAG AND DROP IS DEPRECATED!
- // Do not use this file for new code.
-diff --git a/suite/mailnews/content/phishingDetector.js b/suite/mailnews/content/phishingDetector.js
---- a/suite/mailnews/content/phishingDetector.js
-+++ b/suite/mailnews/content/phishingDetector.js
-@@ -1,10 +1,10 @@
--/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
-- * This Source Code Form is subject to the terms of the Mozilla Public
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
-+/* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // Dependencies:
- // gBrandBundle, gMessengerBundle should already be defined
- // gatherTextUnder from utilityOverlay.js
- 
- ChromeUtils.import("resource:///modules/hostnameUtils.jsm");
-diff --git a/suite/mailnews/content/searchBar.js b/suite/mailnews/content/searchBar.js
---- a/suite/mailnews/content/searchBar.js
-+++ b/suite/mailnews/content/searchBar.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- const {PluralForm} = ChromeUtils.import("resource://gre/modules/PluralForm.jsm");
- 
- var gSearchSession = null;
- var gPreQuickSearchView = null;
-diff --git a/suite/mailnews/content/tabmail.js b/suite/mailnews/content/tabmail.js
---- a/suite/mailnews/content/tabmail.js
-+++ b/suite/mailnews/content/tabmail.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- // Traditionally, mailnews tabs come in two flavours: "folder" and
- // "message" tabs. But these modes are just mere default settings on tab
- // creation, defining layout, URI to load, etc.
- // The user can turn a "message" tab into a "folder" tab just by unhiding
-diff --git a/suite/mailnews/content/threadPane.js b/suite/mailnews/content/threadPane.js
---- a/suite/mailnews/content/threadPane.js
-+++ b/suite/mailnews/content/threadPane.js
-@@ -1,9 +1,9 @@
--/* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var { AppConstants } =
-   ChromeUtils.import("resource://gre/modules/AppConstants.jsm");
- 
- var gLastMessageUriToLoad = null;
-diff --git a/suite/mailnews/modules/MailUtils.js b/suite/mailnews/modules/MailUtils.js
---- a/suite/mailnews/modules/MailUtils.js
-+++ b/suite/mailnews/modules/MailUtils.js
-@@ -1,8 +1,9 @@
-+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
-  * License, v. 2.0. If a copy of the MPL was not distributed with this
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- var EXPORTED_SYMBOLS = ["MailUtils"];
- 
- var { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm");
- var { MailServices } = ChromeUtils.import(

+ 0 - 31
comm-central/patches/9999999-port1787097-suite-bustage.patch

@@ -1,31 +0,0 @@
-# HG changeset patch
-# User Bill Gianopoulos <wgianopoulos@gmail.com>
-# Date 1661856951 0
-Bug 9999999 - Port bug 1787097 to suite.
-Bug 1787097 - Remove libical.
-
-diff --git a/suite/installer/package-manifest.in b/suite/installer/package-manifest.in
---- a/suite/installer/package-manifest.in
-+++ b/suite/installer/package-manifest.in
-@@ -506,21 +506,12 @@ man/*
- 
- [calendar]
- @RESPATH@/chrome/calendar@JAREXT@
- @RESPATH@/chrome/calendar.manifest
- 
- @RESPATH@/res/zones.json
- @RESPATH@/@PREF_DIR@/calendar.js
- 
--# Files added to components directory via `EXTRA_COMPONENTS`.
--@RESPATH@/components/calICALJSComponents.js
--
- # Files added to components directory via `FINAL_TARGET_FILES.components`.
- @RESPATH@/components/calCachedCalendar.js
--@RESPATH@/components/calDateTime.js
--@RESPATH@/components/calDuration.js
--@RESPATH@/components/calICSService.js
- @RESPATH@/components/calICSService-worker.js
- @RESPATH@/components/calItemBase.js
--@RESPATH@/components/calPeriod.js
--@RESPATH@/components/calRecurrenceRule.js
--@RESPATH@/components/calTimezone.js

+ 0 - 36
comm-central/patches/9999999-port1788233-suite-bustage.patch

@@ -1,36 +0,0 @@
-# HG changeset patch
-# User Bill Gianopoulos <wgianopoulos@gmail.com>
-# Date 1662631833 0
-Bug 9999999 - Port bug 1788233 to suite.
-Bug 1788233: Remove PermissionsService from process Windows sandboxing code.
-
-diff --git a/suite/app/nsSuiteApp.cpp b/suite/app/nsSuiteApp.cpp
---- a/suite/app/nsSuiteApp.cpp
-+++ b/suite/app/nsSuiteApp.cpp
-@@ -216,26 +216,23 @@ static int do_main(int argc, char* argv[
-     // no -app flag so we use the compiled-in app data
-     config.appData = &sAppData;
-     config.appDataPath = kDesktopFolder;
-   }
- 
- #if defined(XP_WIN) && defined(MOZ_SANDBOX)
-   sandbox::BrokerServices* brokerServices =
-     sandboxing::GetInitializedBrokerServices();
--  sandboxing::PermissionsService* permissionsService =
--    sandboxing::GetPermissionsService();
- #if defined(MOZ_CONTENT_SANDBOX)
-   if (!brokerServices) {
-     Output("Couldn't initialize the broker services.\n");
-     return 255;
-   }
- #endif
-   config.sandboxBrokerServices = brokerServices;
--  config.sandboxPermissionsService = permissionsService;
- #endif
- 
- #ifdef LIBFUZZER
-   if (getenv("FUZZER"))
-     gBootstrap->XRE_LibFuzzerSetDriver(fuzzer::FuzzerDriver);
- #endif
- 
-   return gBootstrap->XRE_main(argc, argv, config);

+ 0 - 32
comm-central/patches/9999999-windowsshell-suite-bustage.patch

@@ -1,32 +0,0 @@
-# HG changeset patch
-# User Bill Gianopoulos <wgianopoulos@gmail.com>
-# Date 1663152036 0
-Bug 9999999 - Fix suite bustage in nsWindowsShellService.cpp from bug 1686616.
-Bug 1686616 - register all Services.py services with components.conf.
-
-diff --git a/suite/components/shell/nsWindowsShellService.cpp b/suite/components/shell/nsWindowsShellService.cpp
---- a/suite/components/shell/nsWindowsShellService.cpp
-+++ b/suite/components/shell/nsWindowsShellService.cpp
-@@ -613,19 +613,19 @@ nsWindowsShellService::SetDesktopBackgro
-     return rv;
- 
-   nsCOMPtr<imgIContainer> container;
-   rv = request->GetImage(getter_AddRefs(container));
-   if (!container)
-     return NS_ERROR_FAILURE;
- 
-   // get the file name from localized strings
--  nsCOMPtr<nsIStringBundleService> bundleService =
--    mozilla::services::GetStringBundleService();
--  NS_ENSURE_TRUE(bundleService, NS_ERROR_UNEXPECTED);
-+  nsCOMPtr<nsIStringBundleService> bundleService(
-+    do_GetService(NS_STRINGBUNDLE_CONTRACTID, &rv));
-+  NS_ENSURE_SUCCESS(rv, rv);
- 
-   nsCOMPtr<nsIStringBundle> shellBundle;
-   rv = bundleService->CreateBundle(SHELLSERVICE_PROPERTIES,
-                                    getter_AddRefs(shellBundle));
-   NS_ENSURE_SUCCESS(rv, rv);
- 
-   // e.g. "Desktop Background.bmp"
-   nsAutoString fileLeafName;

+ 0 - 11
comm-central/patches/series

@@ -1,14 +1,3 @@
-1790695-decodeimageasync-25315.patch
-1392929-cc-contentprefs2-1_1-25315.patch
-1441016-port1414390-25315.patch
-1069787-spellchecker-subject-1_1-25315.patch
-1794276-jsheaders-mailnews-25315.patch
-1793291-help-25315.patch
-1792578-flushmemory-25315.patch
-9999999-port1787097-suite-bustage.patch
-9999999-port1788233-suite-bustage.patch
-9999999-windowsshell-suite-bustage.patch
-1684772-l10n-toml-suite.patch
 TOP-1642188-remove-nsDOMIEvent-cc.patch
 TOP-1611010-DOMEventListener-cc.patch
 TOP-1614671-port1456035-4-and-5-61a1-cc.patch