--- a/mail/base/content/mailWidgets.js
+++ b/mail/base/content/mailWidgets.js
@@ -570,17 +570,17 @@ class MozThreadPaneTreeColpicker extends
}
customElements.define("thread-pane-treecolpicker", MozThreadPaneTreeColpicker, { extends: "treecolpicker" });
// The menulist CE is defined lazily. Create one now to get menulist defined,
// allowing us to inherit from it.
if (!customElements.get("menulist")) {
delete document.createXULElement("menulist");
}
-customElements.whenDefined("menulist").then(() => {
+{
/**
* MozMenulistEditable is a menulist widget that can be made editable by setting editable="true".
* With an additional type="description" the list also contains an additional label that can hold
* for instance, a description of a menu item.
* It is typically used e.g. for the "Custom From Address..." feature to let the user chose and
* edit the address to send from.
* @extends {MozMenuList}
*/
@@ -750,17 +750,17 @@ customElements.whenDefined("menulist").t
}
const MenuBaseControl = MozElements.BaseControlMixin(MozElements.MozElementMixin(XULMenuElement));
MenuBaseControl.implementCustomInterface(
MozMenulistEditable, [Ci.nsIDOMXULMenuListElement, Ci.nsIDOMXULSelectControlElement]
);
customElements.define("menulist-editable", MozMenulistEditable, { extends: "menulist" });
-});
+}
/**
* The MozMailMultiEmailheaderfield widget shows multiple emails. It collapses long rows and allows
* toggling the full view open. This widget is typically used in the message header pane to show
* addresses for To, Cc, Bcc, and any other addressing type header that can contain more than one
* mailbox.
*
* extends {MozXULElement}
*/
--- a/mail/components/addrbook/content/menulist-addrbooks.js
+++ b/mail/components/addrbook/content/menulist-addrbooks.js
@@ -2,18 +2,17 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
// The menulist CE is defined lazily. Create one now to get menulist defined,
// allowing us to inherit from it.
if (!customElements.get("menulist")) {
delete document.createXULElement("menulist");
}
-
-customElements.whenDefined("menulist").then(() => {
+{
const { MailServices } = ChromeUtils.import("resource:///modules/MailServices.jsm");
const { fixIterator } = ChromeUtils.import("resource:///modules/iteratorUtils.jsm");
/**
* MozMenulistAddrbooks is a menulist widget that is automatically
* populated with the complete address book list.
* @extends {MozMenuList}
*/
class MozMenulistAddrbooks extends customElements.get("menulist") {
@@ -280,9 +279,9 @@ customElements.whenDefined("menulist").t
// Sort anything else by the dir type.
return a.dirType - b.dirType;
}
}
customElements.define("menulist-addrbooks",
MozMenulistAddrbooks, { extends: "menulist" });
-});
+}
--- a/mail/components/extensions/parent/ext-legacy.js
+++ b/mail/components/extensions/parent/ext-legacy.js
@@ -164,17 +164,17 @@ this.legacy = class extends ExtensionAPI
// Overlays.load must only be called once per window per extension.
// We use this WeakSet to remember all windows we've already seen.
let seenWindows = new WeakSet();
// Listen for new windows to overlay.
let documentObserver = {
observe(doc) {
let win = doc.defaultView;
- if (ExtensionCommon.instanceOf(doc, "XULDocument") &&
+ if (ExtensionCommon.instanceOf(doc, "HTMLDocument") &&
!seenWindows.has(win)) {
seenWindows.add(win);
Overlays.load(chromeManifest, win);
}
},
};
Services.obs.addObserver(documentObserver, "chrome-document-interactive");