• zturner@chromium.org's avatar
    Refactor the TrayAudio code so that it can be used by other platforms. · 2a5c5f06
    zturner@chromium.org authored
    The motivation here is to introduce the volume slider tray UI into
    Windows Ash.
    
    This change does not actually add tray audio UI to other platforms,
    only moves some non-chromeos specific things out of the chromeos
    platform folders, so that we can hook in the native Audio APIs
    of other platforms to the tray UI.
    
    At a high level, this change does the following:
    
    1) Move tray_audio out of chromeos/ so that other platforms can
    use the UI that it provides.
    2) Decouples TrayAudio from CrasAudioHandler by introducing a
    new delegate, in a similar vein to what is done with all the other
    handlers (e.g. the BluetoothHandler)
    3) Move the additional views (VolumeView, etc) to their own files
    so they can be used by other platforms as well.
    
    TEST=
     On CrOS physical device, verified that:
     1) Keyboard volume buttons function appropriately and display the
        volume view
     2) AudioDetailView still is accessible at the correct times
     3) Adjusting the volume (via the keyboard shortcuts or via the
        slider) correctly change the output volume.
     4) UI still behaves correctly (e.g. icons update as the volume
        changes, mute button works, etc).
    
    BUG=227247
    
    Review URL: https://codereview.chromium.org/163953007
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251959 0039d316-1c4b-4281-b951-d872f2087c98
    2a5c5f06
volume_view.cc 10.7 KB