diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 14:29:10 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-28 14:29:10 +0000 |
commit | 2aa4a82499d4becd2284cdb482213d541b8804dd (patch) | |
tree | b80bf8bf13c3766139fbacc530efd0dd9d54394c /dom/webidl/HTMLImageElement.webidl | |
parent | Initial commit. (diff) | |
download | firefox-upstream.tar.xz firefox-upstream.zip |
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/webidl/HTMLImageElement.webidl')
-rw-r--r-- | dom/webidl/HTMLImageElement.webidl | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/dom/webidl/HTMLImageElement.webidl b/dom/webidl/HTMLImageElement.webidl new file mode 100644 index 0000000000..5c8586419e --- /dev/null +++ b/dom/webidl/HTMLImageElement.webidl @@ -0,0 +1,134 @@ +/* -*- 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/. + * + * The origin of this IDL file is + * http://www.whatwg.org/specs/web-apps/current-work/#htmlimageelement + * http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis + * © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and + * Opera Software ASA. You are granted a license to use, reproduce + * and create derivative works of this document. + */ + +interface imgINotificationObserver; +interface imgIRequest; +interface URI; +interface nsIStreamListener; + +[NamedConstructor=Image(optional unsigned long width, optional unsigned long height), + Exposed=Window] +interface HTMLImageElement : HTMLElement { + [HTMLConstructor] constructor(); + + [CEReactions, SetterThrows] + attribute DOMString alt; + [CEReactions, SetterNeedsSubjectPrincipal=NonSystem, SetterThrows] + attribute DOMString src; + [CEReactions, SetterNeedsSubjectPrincipal=NonSystem, SetterThrows] + attribute DOMString srcset; + [CEReactions, SetterThrows] + attribute DOMString? crossOrigin; + [CEReactions, SetterThrows] + attribute DOMString useMap; + [CEReactions, SetterThrows] + attribute DOMString referrerPolicy; + [CEReactions, SetterThrows] + attribute boolean isMap; + [CEReactions, SetterThrows] + attribute unsigned long width; + [CEReactions, SetterThrows] + attribute unsigned long height; + [CEReactions, SetterThrows] + attribute DOMString decoding; + [CEReactions, SetterThrows, Pref="dom.image-lazy-loading.enabled"] + attribute DOMString loading; + readonly attribute unsigned long naturalWidth; + readonly attribute unsigned long naturalHeight; + readonly attribute boolean complete; + [NewObject] + Promise<void> decode(); +}; + +// http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis +partial interface HTMLImageElement { + [CEReactions, SetterThrows] + attribute DOMString name; + [CEReactions, SetterThrows] + attribute DOMString align; + [CEReactions, SetterThrows] + attribute unsigned long hspace; + [CEReactions, SetterThrows] + attribute unsigned long vspace; + [CEReactions, SetterThrows] + attribute DOMString longDesc; + + [CEReactions, SetterThrows] attribute [TreatNullAs=EmptyString] DOMString border; +}; + +// [Update me: not in whatwg spec yet] +// http://picture.responsiveimages.org/#the-img-element +partial interface HTMLImageElement { + [CEReactions, SetterThrows] + attribute DOMString sizes; + readonly attribute DOMString currentSrc; +}; + +// Mozilla extensions. +partial interface HTMLImageElement { + [CEReactions, SetterThrows] + attribute DOMString lowsrc; + + // These attributes are offsets from the closest view (to mimic + // NS4's "offset-from-layer" behavior). + readonly attribute long x; + readonly attribute long y; +}; + +interface mixin MozImageLoadingContent { + // Mirrored chrome-only nsIImageLoadingContent methods. Please make sure + // to update this list if nsIImageLoadingContent changes. + [ChromeOnly] + const long UNKNOWN_REQUEST = -1; + [ChromeOnly] + const long CURRENT_REQUEST = 0; + [ChromeOnly] + const long PENDING_REQUEST = 1; + + [ChromeOnly] + attribute boolean loadingEnabled; + /** + * Same as addNativeObserver but intended for scripted observers or observers + * from another or without a document. + */ + [ChromeOnly] + void addObserver(imgINotificationObserver aObserver); + /** + * Same as removeNativeObserver but intended for scripted observers or + * observers from another or without a document. + */ + [ChromeOnly] + void removeObserver(imgINotificationObserver aObserver); + [ChromeOnly,Throws] + imgIRequest? getRequest(long aRequestType); + [ChromeOnly,Throws] + long getRequestType(imgIRequest aRequest); + [ChromeOnly] + readonly attribute URI? currentURI; + // Gets the final URI of the current request, if available. + // Otherwise, returns null. + [ChromeOnly] + readonly attribute URI? currentRequestFinalURI; + /** + * forceReload forces reloading of the image pointed to by currentURI + * + * @param aNotify request should notify + * @throws NS_ERROR_NOT_AVAILABLE if there is no current URI to reload + */ + [ChromeOnly,Throws] + void forceReload(optional boolean aNotify = true); + [ChromeOnly] + void forceImageState(boolean aForce, unsigned long long aState); +}; + +HTMLImageElement includes MozImageLoadingContent; |