The main technical hurdle here is that ChromeVox uses Closure dependencies, and the others do not.
My suggestion:
* Create a common directory for standalone utility code in JavaScript that could be shared by multiple extensions
* The JavaScript files in this directory would not include goog.provide or goog.require
* For ChromeVox build rules that make use of Closure, we'd use a build rule that rewrites these files to have goog.provide and goog.require at the top.
Alternatively, we could do it the other way around - remove the Closure dependency stuff from the top when copying into Select-to-speak, and Switch Access.
Comment 1 by kathrelk...@chromium.org
, Aug 7 2017