diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /dom/webidl/AnonymousContent.webidl | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/webidl/AnonymousContent.webidl')
-rw-r--r-- | dom/webidl/AnonymousContent.webidl | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/dom/webidl/AnonymousContent.webidl b/dom/webidl/AnonymousContent.webidl new file mode 100644 index 0000000000..3dd6fd0264 --- /dev/null +++ b/dom/webidl/AnonymousContent.webidl @@ -0,0 +1,100 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 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 declares the AnonymousContent interface which is used to + * manipulate content that has been inserted into the document's canvasFrame + * anonymous container. + * See Document.insertAnonymousContent. + * + * This API never returns a reference to the actual inserted DOM node on + * purpose. This is to make sure the content cannot be randomly changed and the + * DOM cannot be traversed from the node, so that Gecko can remain in control of + * the inserted content. + */ + +[ChromeOnly, Exposed=Window] +interface AnonymousContent { + /** + * Get the text content of an element inside this custom anonymous content. + */ + [Throws] + DOMString getTextContentForElement(DOMString elementId); + + /** + * Set the text content of an element inside this custom anonymous content. + */ + [Throws] + undefined setTextContentForElement(DOMString elementId, DOMString text); + + /** + * Get the value of an attribute of an element inside this custom anonymous + * content. + */ + [Throws] + DOMString? getAttributeForElement(DOMString elementId, + DOMString attributeName); + + /** + * Set the value of an attribute of an element inside this custom anonymous + * content. + */ + [NeedsSubjectPrincipal=NonSystem, Throws] + undefined setAttributeForElement(DOMString elementId, + DOMString attributeName, + DOMString value); + + /** + * Remove an attribute from an element inside this custom anonymous content. + */ + [Throws] + undefined removeAttributeForElement(DOMString elementId, + DOMString attributeName); + + /** + * Get the canvas' context for the element specified if it's a <canvas> + * node, `null` otherwise. + */ + [Throws] + nsISupports? getCanvasContext(DOMString elementId, + DOMString contextId); + + [Throws] + Animation setAnimationForElement(DOMString elementId, + object? keyframes, + optional UnrestrictedDoubleOrKeyframeAnimationOptions + options = {}); + + /** + * Accepts a list of (possibly overlapping) DOMRects which describe a shape + * in CSS pixels relative to the element's border box. This shape will be + * excluded from the element's background color rendering. The element will + * not render any background images once this method has been called. + */ + [Throws] + undefined setCutoutRectsForElement(DOMString elementId, + sequence<DOMRect> rects); + + /** + * Get the computed value of a property on an element inside this custom + * anonymous content. + */ + [Throws] + UTF8String? getComputedStylePropertyValue(DOMString elementId, + UTF8String propertyName); + + /** + * If event's original target is in the anonymous content, this returns the id + * attribute value of the target. + */ + DOMString? getTargetIdForEvent(Event event); + + /** + * Set given style to this AnonymousContent. + */ + [Throws] + undefined setStyle(UTF8String property, UTF8String value); +}; |