• Abigail Klein's avatar
    [Live Caption] Manage SODA installation and progress updates for · 5eb53a45
    Abigail Klein authored
    ChromeOS and non-ChromeOS installations.
    
    Introduce a new SODAInstaller which is responsible for installing
    SODA (Speech On-Device API). It has a separate implementations in
    ChromeOS and non-ChromeOS. The SODAInstallerImpl on ChromeOS installs
    SODA with the DlcserviceClient. The SODAInstallerImpl on non-ChromeOS
    installs SODA with the ComponentUpdaterService. Each sends installation
    progress updates to its observers.
    
    The SODAInstaller has a single instance, because SODA is only downloaded
    once for the entire device.
    
    The CaptionController initiates the SODA download by calling the
    InstallSODA method of the SODAInstaller. It initiates language downloads
    by calling InstallLanguage.
    
    The CaptionsHandler is a SODAInstallerObserver. It sends SODA download
    updates to the captions subpage WebUI in settings. Since the
    SODAInstallerObserver is a common interface between the ChromeOS
    and non-ChromeOS implementations, there now only needs to be one
    CaptionsHandler.
    
    More SODAInstallerObservers will be introduced in upcoming CLs.
    
    For more information, see this design doc: https://docs.google.com/document/d/1e9ie7WequR4UafYq72-wpXwFj0-lLWMvjXZP5jXXpwU/edit#
    
    Bug: 1055150, 1111002
    Change-Id: Ia82285a1dc1440229d7912bb07ae522abde9900b
    AX-Relnotes: N/A (feature not yet launched)
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2473744
    Commit-Queue: Abigail Klein <abigailbklein@google.com>
    Reviewed-by: default avatarSorin Jianu <sorin@chromium.org>
    Reviewed-by: default avatarAvi Drissman <avi@chromium.org>
    Reviewed-by: default avatardpapad <dpapad@chromium.org>
    Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#825222}
    5eb53a45
caption_controller.h 3.69 KB