image/public/imgILoader.idl

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
     2  *
     3  * This Source Code Form is subject to the terms of the Mozilla Public
     4  * License, v. 2.0. If a copy of the MPL was not distributed with this
     5  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     7 #include "nsISupports.idl"
     9 interface imgINotificationObserver;
    10 interface imgIRequest;
    12 interface nsIChannel;
    13 interface nsILoadGroup;
    14 interface nsIPrincipal;
    15 interface nsIStreamListener;
    16 interface nsIURI;
    18 interface nsISimpleEnumerator;
    19 interface nsIChannelPolicy;
    21 #include "nsIRequest.idl" // for nsLoadFlags
    23 /**
    24  * imgILoader interface
    25  *
    26  * @author Stuart Parmenter <pavlov@netscape.com>
    27  * @version 0.3
    28  * @see imagelib2
    29  */
    30 [scriptable, builtinclass, uuid(c8126129-8dac-43cd-b1ba-3896fba2dd01)]
    31 interface imgILoader : nsISupports
    32 {
    33   // Extra flags to pass to loadImage if you want a load to use CORS
    34   // validation.
    35   const unsigned long LOAD_CORS_ANONYMOUS = 1 << 16;
    36   const unsigned long LOAD_CORS_USE_CREDENTIALS = 1 << 17;
    38   /**
    39    * Start the load and decode of an image.
    40    * @param aURI the URI to load
    41    * @param aFirstPartyIsolationURI the urlbar URI that 'initiated' the load -- used for 3rd party blocking
    42    * @param aReferrerURI the 'referring' URI
    43    * @param aLoadingPrincipal the principal of the loading document
    44    * @param aLoadGroup Loadgroup to put the image load into
    45    * @param aObserver the observer (may be null)
    46    * @param aCX some random data
    47    * @param aLoadFlags Load flags for the request
    48    * @param aCacheKey cache key to use for a load if the original
    49    *                  image came from a request that had post data
    52    * libpr0n does NOT keep a strong ref to the observer; this prevents
    53    * reference cycles.  This means that callers of loadImage should
    54    * make sure to Cancel() the resulting request before the observer
    55    * goes away.
    56    */
    57   imgIRequest loadImageXPCOM(in nsIURI aURI,
    58                              in nsIURI aFirstPartyIsolationURI,
    59                              in nsIURI aReferrerURI,
    60                              in nsIPrincipal aLoadingPrincipal,
    61                              in nsILoadGroup aLoadGroup,
    62                              in imgINotificationObserver aObserver,
    63                              in nsISupports aCX,
    64                              in nsLoadFlags aLoadFlags,
    65                              in nsISupports cacheKey,
    66                              in nsIChannelPolicy channelPolicy);
    68   /**
    69    * Start the load and decode of an image.
    70    * @param aChannel the channel to load the image from.  This must
    71    *                 already be opened before ths method is called, and there
    72    *                 must have been no OnDataAvailable calls for it yet.   
    73    * @param aObserver the observer (may be null)
    74    * @param cx some random data
    75    * @param aListener [out]
    76    *        A listener that you must send the channel's notifications and data to.
    77    *        Can be null, in which case imagelib has found a cached image and is
    78    *        not interested in the data. @aChannel will be canceled for you in
    79    *        this case.
    80    *
    81    * libpr0n does NOT keep a strong ref to the observer; this prevents
    82    * reference cycles.  This means that callers of loadImageWithChannel should
    83    * make sure to Cancel() the resulting request before the observer goes away.
    84    */
    85   imgIRequest loadImageWithChannelXPCOM(in nsIChannel aChannel,
    86                                         in imgINotificationObserver aObserver,
    87                                         in nsISupports cx,
    88                                         out nsIStreamListener aListener);
    89 };

mercurial