Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Side by Side Diff: chrome/common/extensions/api/automation.idl

Issue 2873373005: Add custom action support (Closed)
Patch Set: Fix format. Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // The <code>chrome.automation</code> API allows developers to access the 5 // The <code>chrome.automation</code> API allows developers to access the
6 // automation (accessibility) tree for the browser. The tree resembles the DOM 6 // automation (accessibility) tree for the browser. The tree resembles the DOM
7 // tree, but only exposes the <em>semantic</em> structure of a page. It can be 7 // tree, but only exposes the <em>semantic</em> structure of a page. It can be
8 // used to programmatically interact with a page by examining names, roles, and 8 // used to programmatically interact with a page by examining names, roles, and
9 // states, listening for events, and performing actions on nodes. 9 // states, listening for events, and performing actions on nodes.
10 [nocompile] namespace automation { 10 [nocompile] namespace automation {
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 enum TreeChangeObserverFilter { 359 enum TreeChangeObserverFilter {
360 noTreeChanges, 360 noTreeChanges,
361 liveRegionTreeChanges, 361 liveRegionTreeChanges,
362 textMarkerChanges, 362 textMarkerChanges,
363 allTreeChanges 363 allTreeChanges
364 }; 364 };
365 365
366 // A listener for changes on the <code>AutomationNode</code> tree. 366 // A listener for changes on the <code>AutomationNode</code> tree.
367 callback TreeChangeObserver = void(TreeChange treeChange); 367 callback TreeChangeObserver = void(TreeChange treeChange);
368 368
369 dictionary CustomAction {
370 long id;
371 DOMString description;
372 };
373
369 // A single node in an Automation tree. 374 // A single node in an Automation tree.
370 [nocompile, noinline_doc] dictionary AutomationNode { 375 [nocompile, noinline_doc] dictionary AutomationNode {
371 // The root node of the tree containing this AutomationNode. 376 // The root node of the tree containing this AutomationNode.
372 AutomationNode? root; 377 AutomationNode? root;
373 378
374 // Whether this AutomationNode is a root node. 379 // Whether this AutomationNode is a root node.
375 boolean isRootNode; 380 boolean isRootNode;
376 381
377 // The role of this node. 382 // The role of this node.
378 RoleType? role; 383 RoleType? role;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
442 // name, via the $(ref:automation.AutomationNode.name) attribute. 447 // name, via the $(ref:automation.AutomationNode.name) attribute.
443 AutomationNode[]? labelledBy; 448 AutomationNode[]? labelledBy;
444 449
445 // The node referred to by <code>aria-activedescendant</code>, where 450 // The node referred to by <code>aria-activedescendant</code>, where
446 // applicable 451 // applicable
447 AutomationNode? activeDescendant; 452 AutomationNode? activeDescendant;
448 453
449 // The target of an in-page link. 454 // The target of an in-page link.
450 AutomationNode? inPageLinkTarget; 455 AutomationNode? inPageLinkTarget;
451 456
457 // An array of custom actions.
458 CustomAction[]? customActions;
459
452 // 460 //
453 // Link attributes. 461 // Link attributes.
454 // 462 //
455 463
456 // The URL that this link will navigate to. 464 // The URL that this link will navigate to.
457 DOMString? url; 465 DOMString? url;
458 466
459 // 467 //
460 // Document attributes. 468 // Document attributes.
461 // 469 //
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
703 // original size. 711 // original size.
704 static void getImageData(long maxWidth, long maxHeight); 712 static void getImageData(long maxWidth, long maxHeight);
705 713
706 // Does a hit test of the given global screen coordinates, and fires 714 // Does a hit test of the given global screen coordinates, and fires
707 // eventToFire on the resulting object. 715 // eventToFire on the resulting object.
708 static void hitTest(long x, long y, EventType eventToFire); 716 static void hitTest(long x, long y, EventType eventToFire);
709 717
710 // Scrolls this node to make it visible. 718 // Scrolls this node to make it visible.
711 static void makeVisible(); 719 static void makeVisible();
712 720
721 // Performs custom action.
722 static void performCustomAction(CustomAction customAction);
David Tseng 2017/06/08 17:21:59 Wait, this is the _public_ api. It doesn't make se
yawano 2017/06/09 01:05:14 Yes, this is public API. The intention is that it
David Tseng 2017/06/09 18:09:53 If we chose to, I think we should separate the con
yawano 2017/06/13 06:58:46 Changed performCustomAction to take customActionId
723
713 // Sets selection within a text field. 724 // Sets selection within a text field.
714 static void setSelection(long startIndex, long endIndex); 725 static void setSelection(long startIndex, long endIndex);
715 726
716 // Clears focus and sets this node as the starting point for the next 727 // Clears focus and sets this node as the starting point for the next
717 // time the user presses Tab or Shift+Tab. 728 // time the user presses Tab or Shift+Tab.
718 static void setSequentialFocusNavigationStartingPoint(); 729 static void setSequentialFocusNavigationStartingPoint();
719 730
720 // Show the context menu for this element, as if the user right-clicked. 731 // Show the context menu for this element, as if the user right-clicked.
721 static void showContextMenu(); 732 static void showContextMenu();
722 733
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 // Everything in the tree between the two node/offset pairs gets included 818 // Everything in the tree between the two node/offset pairs gets included
808 // in the selection. The anchor is where the user started the selection, 819 // in the selection. The anchor is where the user started the selection,
809 // while the focus is the point at which the selection gets extended 820 // while the focus is the point at which the selection gets extended
810 // e.g. when dragging with a mouse or using the keyboard. For nodes with 821 // e.g. when dragging with a mouse or using the keyboard. For nodes with
811 // the role staticText, the offset gives the character offset within 822 // the role staticText, the offset gives the character offset within
812 // the value where the selection starts or ends, respectively. 823 // the value where the selection starts or ends, respectively.
813 [nocompile] static void setDocumentSelection( 824 [nocompile] static void setDocumentSelection(
814 SetDocumentSelectionParams params); 825 SetDocumentSelectionParams params);
815 }; 826 };
816 }; 827 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698