Always start brltty on ChromeVox load
Recently, the way in which brltty launches for usb changed. Previously, when a display plugs in via usb, a udev rule triggers a shell script. Now, the udev rule triggers a pre-existing Upstart job which triggers the original shell script. https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/1869773 The pre-existing Upstart job had been used to launch brltty for bluetooth and provided programmatic start/stop via dbus from Chrome client code. As of the above change, there now exists a scenario in which Chrome client code might stop brltty but not re-start it. 1. plug in a usb display. This triggers udev -> start the Upstart job which correctly launches brltty. 2. toggle off ChromeVox. (this triggers a stop on the Upstart job). 3. toggle back on ChromeVox. (no action occurs from either udev or Chrome). result: no re-start occurs. This used to work because in 1, we directly launched brltty via a shell script. In 2, we stopped the Upstart job, which was never started. In 3, brltty is still around and never lost its connection to the display. The fix is to always start the Upstart job in 3. Bug: 1020394 Change-Id: Ied46d71852e97c750573fe0e79f03a2d2feabe3c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1893930Reviewed-by:Dominic Mazzoni <dmazzoni@chromium.org> Commit-Queue: David Tseng <dtseng@chromium.org> Cr-Commit-Position: refs/heads/master@{#711782}
Showing
Please register or sign in to comment