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

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

Issue 1365433002: Add setSelection function to automation API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@nobrailleautostartintests
Patch Set: Change setDocumentSelection to take named arguments. Created 5 years, 2 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 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 // must be one of: 269 // must be one of:
270 // <ul> 270 // <ul>
271 // <li>string</li> 271 // <li>string</li>
272 // <li>integer</li> 272 // <li>integer</li>
273 // <li>float</li> 273 // <li>float</li>
274 // <li>boolean</li> 274 // <li>boolean</li>
275 // </ul> 275 // </ul>
276 object? attributes; 276 object? attributes;
277 }; 277 };
278 278
279 // Arguments for the setDocumentSelection() function.
280 [nocompile, noinline_doc] dictionary SetDocumentSelectionParams {
281 // The node where the selection begins.
282 [instanceOf=AutomationNode] object anchorObject;
283 // The offset in the anchor node where the selection begins.
284 long anchorOffset;
285 // The node where the selection ends.
286 [instanceOf=AutomationNode] object focusObject;
287 // The offset within the focus node where the selection ends.
288 long focusOffset;
289 };
290
279 // Called when the result for a <code>query</code> is available. 291 // Called when the result for a <code>query</code> is available.
280 callback QueryCallback = void(AutomationNode node); 292 callback QueryCallback = void(AutomationNode node);
281 293
282 // An event in the Automation tree. 294 // An event in the Automation tree.
283 [nocompile, noinline_doc] dictionary AutomationEvent { 295 [nocompile, noinline_doc] dictionary AutomationEvent {
284 // The $(ref:automation.AutomationNode) to which the event was targeted. 296 // The $(ref:automation.AutomationNode) to which the event was targeted.
285 AutomationNode target; 297 AutomationNode target;
286 298
287 // The type of the event. 299 // The type of the event.
288 EventType type; 300 EventType type;
(...skipping 16 matching lines...) Expand all
305 }; 317 };
306 318
307 // A listener for changes on the <code>AutomationNode</code> tree. 319 // A listener for changes on the <code>AutomationNode</code> tree.
308 callback TreeChangeObserver = void(TreeChange treeChange); 320 callback TreeChangeObserver = void(TreeChange treeChange);
309 321
310 // A single node in an Automation tree. 322 // A single node in an Automation tree.
311 [nocompile, noinline_doc] dictionary AutomationNode { 323 [nocompile, noinline_doc] dictionary AutomationNode {
312 // The root node of the tree containing this AutomationNode. 324 // The root node of the tree containing this AutomationNode.
313 AutomationNode root; 325 AutomationNode root;
314 326
315 // Whether this AutomationNode is root node. 327 // Whether this AutomationNode is a root node.
316 boolean isRootNode; 328 boolean isRootNode;
317 329
318 // The role of this node. 330 // The role of this node.
319 automation.RoleType role; 331 automation.RoleType role;
320 332
321 // The $(ref:automation.StateType)s describing this node. 333 // The $(ref:automation.StateType)s describing this node.
322 object state; 334 object state;
323 335
324 // The rendered location (as a bounding box) of this node within the frame. 336 // The rendered location (as a bounding box) of this node within the frame.
325 automation.Rect location; 337 automation.Rect location;
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
415 long textSelStart; 427 long textSelStart;
416 428
417 // The character index of the end of the selection within this editable 429 // The character index of the end of the selection within this editable
418 // text element; -1 if no selection. 430 // text element; -1 if no selection.
419 long textSelEnd; 431 long textSelEnd;
420 432
421 // The input type, like email or number. 433 // The input type, like email or number.
422 DOMString textInputType; 434 DOMString textInputType;
423 435
424 // 436 //
437 // Tree selection attributes (available on root nodes only)
438 //
439
440 // The anchor node of the tree selection, if any.
441 AutomationNode? anchorObject;
442 // The anchor offset of the tree selection, if any.
443 long? anchorOffset;
444 // The focus node of the tree selection, if any.
445 AutomationNode? focusObject;
446 // The focus offset of the tree selection, if any.
447 long? focusOffset;
448
449 //
425 // Range attributes. 450 // Range attributes.
426 // 451 //
427 452
428 // The current value for this range. 453 // The current value for this range.
429 double valueForRange; 454 double valueForRange;
430 455
431 // The minimum possible value for this range. 456 // The minimum possible value for this range.
432 double minValueForRange; 457 double minValueForRange;
433 458
434 // The maximum possible value for this range. 459 // The maximum possible value for this range.
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 [nocompile] static void getDesktop(RootCallback callback); 571 [nocompile] static void getDesktop(RootCallback callback);
547 572
548 // Add a tree change observer. Tree change observers are static/global, they 573 // Add a tree change observer. Tree change observers are static/global, they
549 // listen to changes across all trees. 574 // listen to changes across all trees.
550 [nocompile] static void addTreeChangeObserver( 575 [nocompile] static void addTreeChangeObserver(
551 TreeChangeObserver observer); 576 TreeChangeObserver observer);
552 577
553 // Remove a tree change observer. 578 // Remove a tree change observer.
554 [nocompile] static void removeTreeChangeObserver( 579 [nocompile] static void removeTreeChangeObserver(
555 TreeChangeObserver observer); 580 TreeChangeObserver observer);
581
582 // Sets the selection in a tree. This creates a selection in a single
583 // tree (anchorObject and focusObject must have the same root).
584 // Everything in the tree between the two node/offset pairs gets included
585 // in the selection. The anchor is where the user started the selection,
586 // while the focus is the point at which the selection gets extended
587 // e.g. when dragging with a mouse or using the keyboard. For nodes with
588 // the role staticText, the offset gives the character offset within
589 // the value where the selection starts or ends, respectively.
590 [nocompile] static void setDocumentSelection(
591 SetDocumentSelectionParams params);
556 }; 592 };
557 }; 593 };
OLDNEW
« no previous file with comments | « chrome/browser/ui/aura/accessibility/automation_manager_aura.cc ('k') | chrome/common/extensions/api/automation_internal.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698