The chrome.automation API allows developers to access the automation (accessibility) tree for the browser. The tree resembles the DOM tree, but only exposes the semantic structure of a page. It can be used to programmatically interact with a page by examining names, roles, and states, listening for events, and performing actions on nodes.
The chrome.automation API allows developers to access the automation (accessibility) tree for the browser. The tree resembles the DOM tree, but only exposes the semantic structure of a page. It can be used to programmatically interact with a page by examining names, roles, and states, listening for events, and performing actions on nodes. * available since Chrome 81 * https://developer.chrome.com/apps/automation
(add-tree-change-observer filter)
Add a tree change observer. Tree change observers are static/global, they listen to changes across all trees. Pass a filter to determine what specific tree changes to listen to, and note that listnening to all tree changes can be expensive.
|filter| - https://developer.chrome.com/apps/automation#property-addTreeChangeObserver-filter.
This function returns a core.async channel of type promise-chan
which eventually receives a result value.
Signature of the result value put on the channel is [tree-change] where:
|tree-change| - https://developer.chrome.com/apps/automation#property-observer-treeChange.
In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error.
https://developer.chrome.com/apps/automation#method-addTreeChangeObserver.
Add a tree change observer. Tree change observers are static/global, they listen to changes across all trees. Pass a filter to determine what specific tree changes to listen to, and note that listnening to all tree changes can be expensive. |filter| - https://developer.chrome.com/apps/automation#property-addTreeChangeObserver-filter. This function returns a core.async channel of type `promise-chan` which eventually receives a result value. Signature of the result value put on the channel is [tree-change] where: |tree-change| - https://developer.chrome.com/apps/automation#property-observer-treeChange. In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error. https://developer.chrome.com/apps/automation#method-addTreeChangeObserver.
(get-desktop)
Get the automation tree for the whole desktop which consists of all on screen views. Note this API is currently only supported on Chrome OS.
This function returns a core.async channel of type promise-chan
which eventually receives a result value.
Signature of the result value put on the channel is [root-node] where:
|root-node| - https://developer.chrome.com/apps/automation#property-callback-rootNode.
In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error.
https://developer.chrome.com/apps/automation#method-getDesktop.
Get the automation tree for the whole desktop which consists of all on screen views. Note this API is currently only supported on Chrome OS. This function returns a core.async channel of type `promise-chan` which eventually receives a result value. Signature of the result value put on the channel is [root-node] where: |root-node| - https://developer.chrome.com/apps/automation#property-callback-rootNode. In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error. https://developer.chrome.com/apps/automation#method-getDesktop.
(get-focus)
Get the automation node that currently has focus, globally. Will return null if none of the nodes in any loaded trees have focus.
This function returns a core.async channel of type promise-chan
which eventually receives a result value.
Signature of the result value put on the channel is [focused-node] where:
|focused-node| - https://developer.chrome.com/apps/automation#property-callback-focusedNode.
In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error.
https://developer.chrome.com/apps/automation#method-getFocus.
Get the automation node that currently has focus, globally. Will return null if none of the nodes in any loaded trees have focus. This function returns a core.async channel of type `promise-chan` which eventually receives a result value. Signature of the result value put on the channel is [focused-node] where: |focused-node| - https://developer.chrome.com/apps/automation#property-callback-focusedNode. In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error. https://developer.chrome.com/apps/automation#method-getFocus.
(get-tree)
(get-tree tab-id)
Get the automation tree for the tab with the given tabId, or the current tab if no tabID is given, enabling automation if necessary. Returns a tree with a placeholder root node; listen for the 'loadComplete' event to get a notification that the tree has fully loaded (the previous root node reference will stop working at or before this point).
|tab-id| - https://developer.chrome.com/apps/automation#property-getTree-tabId.
This function returns a core.async channel of type promise-chan
which eventually receives a result value.
Signature of the result value put on the channel is [root-node] where:
|root-node| - https://developer.chrome.com/apps/automation#property-callback-rootNode.
In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error.
https://developer.chrome.com/apps/automation#method-getTree.
Get the automation tree for the tab with the given tabId, or the current tab if no tabID is given, enabling automation if necessary. Returns a tree with a placeholder root node; listen for the 'loadComplete' event to get a notification that the tree has fully loaded (the previous root node reference will stop working at or before this point). |tab-id| - https://developer.chrome.com/apps/automation#property-getTree-tabId. This function returns a core.async channel of type `promise-chan` which eventually receives a result value. Signature of the result value put on the channel is [root-node] where: |root-node| - https://developer.chrome.com/apps/automation#property-callback-rootNode. In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error. https://developer.chrome.com/apps/automation#method-getTree.
(remove-tree-change-observer)
Remove a tree change observer.
This function returns a core.async channel of type promise-chan
which eventually receives a result value.
Signature of the result value put on the channel is [tree-change] where:
|tree-change| - https://developer.chrome.com/apps/automation#property-observer-treeChange.
In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error.
https://developer.chrome.com/apps/automation#method-removeTreeChangeObserver.
Remove a tree change observer. This function returns a core.async channel of type `promise-chan` which eventually receives a result value. Signature of the result value put on the channel is [tree-change] where: |tree-change| - https://developer.chrome.com/apps/automation#property-observer-treeChange. In case of an error the channel closes without receiving any value and relevant error object can be obtained via chromex.error/get-last-error. https://developer.chrome.com/apps/automation#method-removeTreeChangeObserver.
(set-document-selection params)
Sets the selection in a tree. This creates a selection in a single tree (anchorObject and focusObject must have the same root). Everything in the tree between the two node/offset pairs gets included in the selection. The anchor is where the user started the selection, while the focus is the point at which the selection gets extended e.g. when dragging with a mouse or using the keyboard. For nodes with the role staticText, the offset gives the character offset within the value where the selection starts or ends, respectively.
|params| - https://developer.chrome.com/apps/automation#property-setDocumentSelection-params.
https://developer.chrome.com/apps/automation#method-setDocumentSelection.
Sets the selection in a tree. This creates a selection in a single tree (anchorObject and focusObject must have the same root). Everything in the tree between the two node/offset pairs gets included in the selection. The anchor is where the user started the selection, while the focus is the point at which the selection gets extended e.g. when dragging with a mouse or using the keyboard. For nodes with the role staticText, the offset gives the character offset within the value where the selection starts or ends, respectively. |params| - https://developer.chrome.com/apps/automation#property-setDocumentSelection-params. https://developer.chrome.com/apps/automation#method-setDocumentSelection.
(tap-all-events chan)
Taps all valid non-deprecated events in chromex.app.automation namespace.
Taps all valid non-deprecated events in chromex.app.automation namespace.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close