• Akihiro Ota's avatar
    ChromeVox: Interactive OOBE lessons using UserActionMonitor. · 1b75a0b5
    Akihiro Ota authored
    This change:
    1. Adds a new class called UserActionMonitor. This class stores a queue
    of actions and blocks all other ChromeVox execution until the actions
    are matched and consumed. The initial version of the
    class intercepts key presses and keyboard commands; this is done by
    hooking into the CommandHandler and BackgroundKeyboardHandler.
    Later iterations will listen to range changes, mouse events, gestures,
    and braille commands in a similar fashion.
    2. Adds some simple tests for UserActionMonitor.
    3. Adds tutorial lessons for the OOBE. These lessons are geared toward
    brand new users. When showing one of these lessons, the tutorial
    initializes UserActionMonitor with expectations, which allows us to
    provide interactive walk-throughs. The lessons cover the search key,
    basic navigation, and using search + space.
    4. Wires up communication between UserActionMonitor and the tutorial.
    Most of this wiring is done through the panel.
    
    Bug: 1075752
    AX-Relnotes: N/A
    
    Change-Id: I521016192929d9655234b055cc63ca6d83aa9efa
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2253021
    Commit-Queue: Akihiro Ota <akihiroota@chromium.org>
    Reviewed-by: default avatarDavid Tseng <dtseng@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#792957}
    1b75a0b5
panel.js 43.1 KB