accessible/interfaces/nsIAccessibleDocument.idl
author Felipe Gomes <felipc@gmail.com>
Fri, 22 Feb 2019 12:52:27 +0000
changeset 518485 3607e50ad27a07aea93c2e8b81d8ae05d34fc148
parent 472391 1b58640450884d282a25f7318c8ce115d6eba31c
permissions -rw-r--r--
Bug 1351078 - Remove unused Battery.jsm. r=Yoric Differential Revision: https://phabricator.services.mozilla.com/D20756

/* -*- 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 nsIAccessiblePivot;
interface mozIDOMWindowProxy;

webidl Document;

/**
 * An interface for in-process accessibility clients
 * that wish to retrieve information about a document.
 * When accessibility is turned on in Gecko,
 * there is an nsIAccessibleDocument for each document
 * whether it is XUL, HTML or whatever.
 * You can QueryInterface to nsIAccessibleDocument from the nsIAccessible for
 * the root node of a document or you can get one from
 * nsIAccessible::GetDocument().
 */
[scriptable, builtinclass, uuid(5cad5f91-fcce-40e7-913e-4671701d19b4)]
interface nsIAccessibleDocument : nsISupports
{
  /**
   * The URL of the document
   */
  readonly attribute AString URL;

  /**
   * The title of the document, as specified in the document.
   */
  readonly attribute AString title;

  /**
   * The mime type of the document
   */
  readonly attribute AString mimeType;

  /**
   * The doc type of the document, as specified in the document.
   */
  readonly attribute AString docType;

  /**
   * The Document interface associated with this document.
   */
  readonly attribute Document DOMDocument;

  /**
   * The nsIDOMWindow that the document resides in.
   */
  readonly attribute mozIDOMWindowProxy window;

  /**
   * Return the parent document accessible.
   */
  readonly attribute nsIAccessibleDocument parentDocument;

  /**
   * Return the count of child document accessibles.
   */
  readonly attribute unsigned long childDocumentCount;

  /**
   * The virtual cursor pivot this document manages.
   */
  readonly attribute nsIAccessiblePivot virtualCursor;

  /**
   * Return the child document accessible at the given index.
   */
  nsIAccessibleDocument getChildDocumentAt(in unsigned long index);
};