Initial support for ChromeVox output rules.
commit62a08a655d9673aa6a2557aac685984f4accfb3d
authordtseng <dtseng@chromium.org>
Wed, 12 Nov 2014 21:10:33 +0000 (12 13:10 -0800)
committerCommit bot <commit-bot@chromium.org>
Wed, 12 Nov 2014 21:10:57 +0000 (12 21:10 +0000)
treee580de61635ac8aeade9b11dfea410acb1eae040
parentf7812575621806b0994ff4f96db61de3c0962fd1
Initial support for ChromeVox  output rules.

This cl adds the ability to format an AutomationNode based upon a simple format specifier.

The selection of a format specifier is currently based upon which event is being handled and what type of node (its role) we are attempting to format.

Once the format block has been obtained, we use that block's set of format specifiers to construct output.

Types of output are as follows:
enter: applies to the node if it is newly in the ancestry chain of the current node; does not include the current node. In the future, this specifier may further be expanded into speak and braille subkey/values.
leave: similar to enter in every way, except the scan/application is performed on the ancestry chain fo the previous node (inclusive).
speak: applied to the current node.
braille: applied to the current node.

Note that for now, braille mirrors speech.

Review URL: https://codereview.chromium.org/706103002

Cr-Commit-Position: refs/heads/master@{#303894}
chrome/browser/resources/chromeos/chromevox/chromevox_tests.gypi
chrome/browser/resources/chromeos/chromevox/common/chrome_extension_externs.js
chrome/browser/resources/chromeos/chromevox/common/spannable.js
chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_util.js
chrome/browser/resources/chromeos/chromevox/cvox2/background/automation_util_test.extjs [new file with mode: 0644]
chrome/browser/resources/chromeos/chromevox/cvox2/background/background.js
chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
chrome/browser/resources/chromeos/chromevox/cvox2/background/cursors.js
chrome/browser/resources/chromeos/chromevox/cvox2/background/output.js
chrome/browser/resources/chromeos/chromevox/cvox2/background/output_test.extjs [new file with mode: 0644]
chrome/browser/resources/chromeos/chromevox/testing/chromevox_next_e2e_test_base.js