accessible/public/nsIAccessibleRetrieval.idl

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
     2 /* This Source Code Form is subject to the terms of the Mozilla Public
     3  * License, v. 2.0. If a copy of the MPL was not distributed with this
     4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     6 #include "nsISupports.idl"
     8 interface nsIDOMNode;
     9 interface nsIAccessible;
    10 interface nsIWeakReference;
    11 interface nsIPresShell;
    12 interface nsIDOMWindow;
    13 interface nsIAccessiblePivot;
    15 /**
    16  * An interface for in-process accessibility clients wishing to get an
    17  * nsIAccessible for a given DOM node.  More documentation at:
    18  *   http://www.mozilla.org/projects/ui/accessibility
    19  */
    20 [scriptable, uuid(17f86615-1a3d-4021-b227-3a2ef5cbffd8)]
    21 interface nsIAccessibleRetrieval : nsISupports
    22 {
    23   /**
    24    * Return application accessible.
    25    */
    26   nsIAccessible getApplicationAccessible();
    28   /**
    29    * Return an nsIAccessible for a DOM node in pres shell 0.
    30    * Create a new accessible of the appropriate type if necessary,
    31    * or use one from the accessibility cache if it already exists.
    32    * @param aNode The DOM node to get an accessible for.
    33    * @return The nsIAccessible for the given DOM node.
    34    */
    35   nsIAccessible getAccessibleFor(in nsIDOMNode aNode);
    37    /**
    38     * Returns accessible role as a string.
    39     *
    40     * @param aRole - the accessible role constants.
    41     */
    42   AString getStringRole(in unsigned long aRole);
    44    /**
    45     * Returns list which contains accessible states as a strings.
    46     *
    47     * @param aStates - accessible states.
    48     * @param aExtraStates - accessible extra states.
    49     */
    50   nsISupports getStringStates(in unsigned long aStates,
    51                               in unsigned long aExtraStates);
    53   /**
    54    * Get the type of accessible event as a string.
    55    *
    56    * @param aEventType - the accessible event type constant
    57    * @return - accessible event type presented as human readable string
    58    */
    59   AString getStringEventType(in unsigned long aEventType);
    61   /**
    62    * Get the type of accessible relation as a string.
    63    *
    64    * @param aRelationType - the accessible relation type constant
    65    * @return - accessible relation type presented as human readable string
    66    */
    67   AString getStringRelationType(in unsigned long aRelationType);
    69   /**
    70    * Return an accessible for the given DOM node from the cache.
    71    * @note  the method is intended for testing purposes
    72    *
    73    * @param aNode  [in] the DOM node to get an accessible for
    74    *
    75    * @return       cached accessible for the given DOM node if any
    76    */
    77   nsIAccessible getAccessibleFromCache(in nsIDOMNode aNode);
    79   /**
    80    * Create a new pivot for tracking a position and traversing a subtree.
    81    *
    82    * @param aRoot [in] the accessible root for the pivot
    83    * @return a new pivot
    84    */
    85   nsIAccessiblePivot createAccessiblePivot(in nsIAccessible aRoot);
    87   /**
    88    * Enable logging for the given modules, all other modules aren't logged.
    89    *
    90    * @param aModules [in] list of modules, format is comma separated list
    91    *                      like 'docload,doccreate'.
    92    * @note Works on debug build only.
    93    * @see Logging.cpp for list of possible values.
    94    */
    95   void setLogging(in ACString aModules);
    97   /**
    98    * Return true if the given module is logged.
    99    */
   100   boolean isLogged(in AString aModule);
   101 };
   104 %{ C++
   106 // for component registration
   107 // {663CA4A8-D219-4000-925D-D8F66406B626}
   108 #define NS_ACCESSIBLE_RETRIEVAL_CID \
   109 { 0x663ca4a8, 0xd219, 0x4000, { 0x92, 0x5d, 0xd8, 0xf6, 0x64, 0x6, 0xb6, 0x26 } }
   111 %}

mercurial