Bug 1618103 - Update IA2 IDLs to commit cbc1f296317809f841303aadfbd67e71337c1a55, r=Jamie
authorMarco Zehe <mzehe@mozilla.com>
Thu, 27 Feb 2020 21:38:00 +0000
changeset 516310 03ebc0aee39cd1152f75e1f3669797ddb9875f06
parent 516309 738176935070c160c1123e750ef5cfb10af545f1
child 516311 1fffbb56089b995f370635f74fb7c3193f1b387d
push id37173
push userbtara@mozilla.com
push dateMon, 02 Mar 2020 21:27:32 +0000
treeherdermozilla-central@c32706293416 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersJamie
bugs1618103
milestone75.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1618103 - Update IA2 IDLs to commit cbc1f296317809f841303aadfbd67e71337c1a55, r=Jamie Differential Revision: https://phabricator.services.mozilla.com/D64287
other-licenses/ia2/Accessible2.idl
other-licenses/ia2/Accessible2_3.idl
other-licenses/ia2/AccessibleEventId.idl
other-licenses/ia2/AccessibleRole.idl
other-licenses/ia2/AccessibleText.idl
--- a/other-licenses/ia2/Accessible2.idl
+++ b/other-licenses/ia2/Accessible2.idl
@@ -51,16 +51,17 @@
  * 
  ************************************************************************/ 
 
 /** @mainpage
 
  @section _interfaces Interfaces
   IAccessible2\n
   IAccessible2_2\n
+  IAccessible2_3\n
   IAccessibleAction\n
   IAccessibleApplication\n
   IAccessibleComponent\n
   IAccessibleDocument\n
   IAccessibleEditableText\n
   IAccessibleHypertext\n
   IAccessibleHypertext2\n
   IAccessibleHyperlink\n
@@ -70,16 +71,17 @@
   IAccessibleTable2\n
   IAccessibleTableCell\n
   IAccessibleText\n
   IAccessibleText2\n
   IAccessibleValue
 
  @section _structs Structs
   IA2Locale\n
+  IA2Range\n
   IA2TableModelChange\n
   IA2TextSegment
 
  @section _enums Enums
   ::IA2Actions values are predefined actions for use when implementing support for HTML5 media.\n
   ::IA2CoordinateType values define the requested coordinate type (screen or parent window).\n
   ::IA2EventID values identify events.\n
   ::IA2Role values defines roles which are in addition to the existing MSAA roles.\n
--- a/other-licenses/ia2/Accessible2_3.idl
+++ b/other-licenses/ia2/Accessible2_3.idl
@@ -29,18 +29,21 @@ typedef struct IA2Range {
  * @brief This interface is an extension of IAccessible2_2 and IAccessible2
  * interfaces.
  */
 [object, uuid(5BE18059-762E-4E73-9476-ABA294FED411)]
 interface IAccessible2_3 : IAccessible2_2
 {
   /**
    * @brief Returns an array of ranges for selections within the accessible.
-   * @param [out] the array of selection ranges
-   * @param [out] the array length
+   * @param [out] ranges
+     The array of selection ranges, allocated by the server. The client must
+     free it with CoTaskMemFree.
+   * @param [out] nRanges
+     the array length
    * @retval S_OK
    * @retval S_FALSE returned if there is no selection within the accessible
   */
   [propget] HRESULT selectionRanges
     (
       [out, size_is(,*nRanges)] IA2Range **ranges,
       [out, retval] long *nRanges
     );
--- a/other-licenses/ia2/AccessibleEventId.idl
+++ b/other-licenses/ia2/AccessibleEventId.idl
@@ -220,11 +220,16 @@ enum IA2EventID {
 
   */
   IA2_EVENT_TEXT_SELECTION_CHANGED,
 
   /** A visible data event indicates the change of the visual appearance
     of an accessible object.  This includes for example most of the
     attributes available via the IAccessibleComponent interface.
   */
-  IA2_EVENT_VISIBLE_DATA_CHANGED
+  IA2_EVENT_VISIBLE_DATA_CHANGED,
 
+  /** The role changed. This should only be used if the interfaces supported by the object
+   did not also change. If the interfaces need to change, the object should be destroyed
+   and a new object created.
+  */
+  IA2_EVENT_ROLE_CHANGED
 };
--- a/other-licenses/ia2/AccessibleRole.idl
+++ b/other-licenses/ia2/AccessibleRole.idl
@@ -310,10 +310,39 @@ enum IA2Role {
   IA2_ROLE_CONTENT_DELETION,
 
   /** Content previously inserted or proposed for insertion, e.g. in revision
    history or a content view providing suggestions from reviewers.
   */
   IA2_ROLE_CONTENT_INSERTION,
 
   /// A section of content that is quoted from another source.
-  IA2_ROLE_BLOCK_QUOTE
+  IA2_ROLE_BLOCK_QUOTE,
+
+  /** A run of content that is marked or highlighted, such as for reference
+   purposes, or to call it out as having a special purpose that is clear from
+   context. If the mark is used in conjuction with a related content section
+   in the document, then IA2_RELATION_DETAILS should be used to link the
+   related content (and the reverse relation IA2_RELATION_DETAILS_FOR should
+   link back to the IA2_ROLE_MARK object). If the mark has related information
+   in a tooltip, or as hidden text, then accDescription should be used to
+   provide this information.
+  */
+  IA2_ROLE_MARK,
+
+  /** A grouping for content that is called out as a proposed change from the
+   current version of the document, such as by a reviewer of the content.
+   Should include as children one or both of:
+   IA2_ROLE_CONTENT_DELETION and IA2_ROLE_CONTENT_INSERTION, in any order,
+   to indicate what the actual change is.
+   If the suggestion is accepted, the implementation should change the role to
+   a generic one such as IA2_ROLE_SECTION or IA2_ROLE_TEXT_FRAME.
+  */
+  IA2_ROLE_SUGGESTION,
+
+  /** A single comment, typically user-generated content. Supports reply
+  hierarchies via descendant structure, e.g. a child comment is a reply
+  to the parent comment. Supports groupPosition() method to determine
+  reply level (top comment is 1), as well as set size and position in set
+  within that level.
+  */
+  IA2_ROLE_COMMENT  
 };
--- a/other-licenses/ia2/AccessibleText.idl
+++ b/other-licenses/ia2/AccessibleText.idl
@@ -77,46 +77,63 @@ typedef struct IA2TextSegment {
 
  The rest of the boundary types must be supported.
 
  This enum is used in IAccessibleText::textBeforeOffset, IAccessibleText::textAtOffset,
  and IAccessibleText::textAfterOffset.
 */
 
 enum IA2TextBoundaryType {
-  IA2_TEXT_BOUNDARY_CHAR,       /**< Typically, a single character is returned.  In some cases more than
-                                 one character is returned, for example, when a document contains field
-                                 data such as a field containing a date, time, or footnote reference.
-                                 In this case the caret can move over several characters in one movement
-                                 of the caret.  Note that after the caret moves, the caret offset changes
-                                 by the number of characters in the field, e.g. by 8 characters in the 
-                                 following date: 03/26/07. */
-  IA2_TEXT_BOUNDARY_WORD,       /**< The range provided matches the range observed when the application
-                                 processes the Ctrl + left arrow and Ctrl + right arrow key sequences.
-                                 Typically this is from the start of one word to the start of the next, but
-                                 various applications are inconsistent in the handling of the end of a line. */
-  IA2_TEXT_BOUNDARY_SENTENCE,   ///< Range is from start of one sentence to the start of another sentence.
-  IA2_TEXT_BOUNDARY_PARAGRAPH,  ///< Range is from start of one paragraph to the start of another paragraph.
-  IA2_TEXT_BOUNDARY_LINE,       /**< Range is from start of one line to the start of another line. This
-                                 often means that an end-of-line character will appear at the end of the
-                                 range. However in the case of some applications an end-of-line character
-                                 indicates the end of a paragraph and the lines composing the paragraph,
-                                 other than the last line, do not contain an end of line character. */
-  IA2_TEXT_BOUNDARY_ALL         ///< Using this value will cause all text to be returned.
+  /** Typically, a single character is returned. In some cases more than one
+   character is returned, for example, when a document contains field data such
+   as a field containing a date, time, or footnote reference. In this case
+   the caret can move over several characters in one movement of the caret.
+   Note, that after the caret moves, the caret offset changes by the number of
+  characters in the field, e.g. by 8 characters in the following date: 03/26/07.
+  */
+  IA2_TEXT_BOUNDARY_CHAR,
+
+  /** The range provided matches the range observed when the application
+   processes the Ctrl + left arrow and Ctrl + right arrow key sequences.
+   Typically this is from the start of one word to the start of the next, but
+   various applications are inconsistent in the handling of the end of a line.
+  */
+  IA2_TEXT_BOUNDARY_WORD,
+
+  /** Range is from start of one sentence to the start of another sentence.
+  */
+  IA2_TEXT_BOUNDARY_SENTENCE,
+
+  /** Range is from start of one paragraph to the start of another paragraph.
+  */
+  IA2_TEXT_BOUNDARY_PARAGRAPH,
+
+  /** Range is from start of one line to the start of another line. This often
+   means that an end-of-line character will appear at the end of the range.
+   However in the case of some applications an end-of-line character indicates
+   the end of a paragraph and the lines composing the paragraph, other than
+   the last line, do not contain an end of line character.
+  */
+  IA2_TEXT_BOUNDARY_LINE,
+
+  /** <b>Deprecated.</b> Using this value will cause all text to be returned.
+   Note: IAccessibleText::text should be used instead.
+  */
+  IA2_TEXT_BOUNDARY_ALL
 };
 
 /** @brief This interface gives read-only access to text.
 
  The %IAccessibleText interface should be implemented by all components 
   that present textual information on the display like  buttons, 
   text entry fields, or text portions of the document window.  The interface 
   provides access to the text's content, attributes, and spatial location.  
   However, text can not be modified with this interface.  That is the task 
   of the IAccessibleEditableText interface.
-        
+
  The text length, i.e. the number of characters in the text, is
   returned by IAccessibleText::nCharacters. All methods that operate 
   on particular characters (e.g. IAccessibleText::textAtOffset) use character 
   indices from 0 to length-1. All methods that operate on character positions 
   (e.g. IAccessibleText::text) use indices from 0 to length.
 
  Please note that accessible text does not necessarily support selection.  
   In this case it should behave as if there where no selection.  An empty