diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /image/imgILoader.idl | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | uxp-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz |
Add m-esr52 at 52.6.0
Diffstat (limited to 'image/imgILoader.idl')
-rw-r--r-- | image/imgILoader.idl | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/image/imgILoader.idl b/image/imgILoader.idl new file mode 100644 index 0000000000..36505da9d2 --- /dev/null +++ b/image/imgILoader.idl @@ -0,0 +1,98 @@ +/* -*- 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 + * 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/. */ + +#include "nsISupports.idl" + +interface imgINotificationObserver; +interface imgIRequest; + +interface nsIChannel; +interface nsILoadGroup; +interface nsIPrincipal; +interface nsIStreamListener; +interface nsIURI; + +interface nsISimpleEnumerator; + +#include "nsIRequest.idl" // for nsLoadFlags +#include "nsIContentPolicy.idl" // for nsContentPolicyType + +/** + * imgILoader interface + * + * @author Stuart Parmenter <pavlov@netscape.com> + * @version 0.3 + * @see imagelib2 + */ +[scriptable, builtinclass, uuid(e61377d2-910e-4c65-a64b-428d150e1fd1)] +interface imgILoader : nsISupports +{ + // Extra flags to pass to loadImage if you want a load to use CORS + // validation. + const unsigned long LOAD_CORS_ANONYMOUS = 1 << 16; + const unsigned long LOAD_CORS_USE_CREDENTIALS = 1 << 17; + + /** + * Start the load and decode of an image. + * @param aURI the URI to load + * @param aInitialDocumentURI the URI that 'initiated' the load -- used for + * 3rd party cookie blocking + * @param aReferrerURI the 'referring' URI + * @param aReferrerPolicy the policy to apply to sending referrers. + * examples: "default", "never", "always", "origin" + * (see W3C referrer-policy spec for valid policy strings) + * @param aLoadingPrincipal the principal of the loading document + * @param aLoadGroup Loadgroup to put the image load into + * @param aObserver the observer (may be null) + * @param aCX some random data + * @param aLoadFlags Load flags for the request + * @param aCacheKey cache key to use for a load if the original + * image came from a request that had post data + * @param aContentPolicyType [optional] the nsContentPolicyType to + * use for this load. Defaults to + * nsIContentPolicy::TYPE_IMAGE + + + * ImageLib does NOT keep a strong ref to the observer; this prevents + * reference cycles. This means that callers of loadImage should + * make sure to Cancel() the resulting request before the observer + * goes away. + */ + imgIRequest loadImageXPCOM(in nsIURI aURI, + in nsIURI aInitialDocumentURL, + in nsIURI aReferrerURI, + in AString aReferrerPolicy, + in nsIPrincipal aLoadingPrincipal, + in nsILoadGroup aLoadGroup, + in imgINotificationObserver aObserver, + in nsISupports aCX, + in nsLoadFlags aLoadFlags, + in nsISupports cacheKey, + [optional] + in nsContentPolicyType aContentPolicyType); + + /** + * Start the load and decode of an image. + * @param aChannel the channel to load the image from. This must + * already be opened before ths method is called, and there + * must have been no OnDataAvailable calls for it yet. + * @param aObserver the observer (may be null) + * @param cx some random data + * @param aListener [out] + * A listener that you must send the channel's notifications and data + * to. Can be null, in which case imagelib has found a cached image + * and is not interested in the data. @aChannel will be canceled for + * you in this case. + * + * ImageLib does NOT keep a strong ref to the observer; this prevents + * reference cycles. This means that callers of loadImageWithChannel should + * make sure to Cancel() the resulting request before the observer goes away. + */ + imgIRequest loadImageWithChannelXPCOM(in nsIChannel aChannel, + in imgINotificationObserver aObserver, + in nsISupports cx, + out nsIStreamListener aListener); +}; |