summaryrefslogtreecommitdiffstats
path: root/toolkit/content/widgets/general.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /toolkit/content/widgets/general.js
parentInitial commit. (diff)
downloadthunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.tar.xz
thunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/content/widgets/general.js')
-rw-r--r--toolkit/content/widgets/general.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/toolkit/content/widgets/general.js b/toolkit/content/widgets/general.js
new file mode 100644
index 0000000000..9675193885
--- /dev/null
+++ b/toolkit/content/widgets/general.js
@@ -0,0 +1,43 @@
+/* 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 strict";
+
+// This is loaded into chrome windows with the subscript loader. Wrap in
+// a block to prevent accidentally leaking globals onto `window`.
+{
+ class MozDropmarker extends MozXULElement {
+ constructor() {
+ super();
+ let shadowRoot = this.attachShadow({ mode: "open" });
+ let stylesheet = document.createElement("link");
+ stylesheet.rel = "stylesheet";
+ stylesheet.href = "chrome://global/skin/dropmarker.css";
+
+ let image = document.createXULElement("image");
+ image.part = "icon";
+ shadowRoot.append(stylesheet, image);
+ }
+ }
+
+ customElements.define("dropmarker", MozDropmarker);
+
+ class MozCommandSet extends MozXULElement {
+ connectedCallback() {
+ if (this.getAttribute("commandupdater") === "true") {
+ const events = this.getAttribute("events") || "*";
+ const targets = this.getAttribute("targets") || "*";
+ document.commandDispatcher.addCommandUpdater(this, events, targets);
+ }
+ }
+
+ disconnectedCallback() {
+ if (this.getAttribute("commandupdater") === "true") {
+ document.commandDispatcher.removeCommandUpdater(this);
+ }
+ }
+ }
+
+ customElements.define("commandset", MozCommandSet);
+}