Commit 5136d353 authored by Jacob Dufault's avatar Jacob Dufault Committed by Commit Bot

cros: Fix mute shelf icon color in OOBE

Bug: 877047
Change-Id: If77842d8f90cfc0a09420c82745d82a1b0a2030d
Reviewed-on: https://chromium-review.googlesource.com/1187407Reviewed-by: default avatarYoshiki Iguchi <yoshiki@chromium.org>
Commit-Queue: Jacob Dufault <jdufault@chromium.org>
Cr-Commit-Position: refs/heads/master@{#585875}
parent 88f4eab8
......@@ -8,12 +8,14 @@
#include "ash/public/cpp/ash_features.h"
#include "ash/resources/vector_icons/vector_icons.h"
#include "ash/root_window_controller.h"
#include "ash/session/session_controller.h"
#include "ash/shell.h"
#include "ash/system/audio/audio_detailed_view.h"
#include "ash/system/audio/volume_view.h"
#include "ash/system/tray/system_tray.h"
#include "ash/system/tray/system_tray_item_detailed_view_delegate.h"
#include "ash/system/tray/tray_constants.h"
#include "ash/system/tray/tray_utils.h"
#include "ui/views/view.h"
namespace ash {
......@@ -137,7 +139,14 @@ void TrayAudio::OnActiveInputNodeChanged() {
Update();
}
void TrayAudio::OnSessionStateChanged(session_manager::SessionState state) {
Update();
}
void TrayAudio::Update() {
SetIconColor(TrayIconColor(
ash::Shell::Get()->session_controller()->GetSessionState()));
if (tray_view())
tray_view()->SetVisible(GetInitialVisibility());
if (volume_view_) {
......
......@@ -8,6 +8,7 @@
#include <stdint.h>
#include "ash/ash_export.h"
#include "ash/session/session_observer.h"
#include "ash/system/tray/tray_image_item.h"
#include "base/macros.h"
#include "chromeos/audio/cras_audio_handler.h"
......@@ -23,7 +24,8 @@ class DetailedViewDelegate;
// The system tray item for audio input and output.
class ASH_EXPORT TrayAudio : public TrayImageItem,
public chromeos::CrasAudioHandler::AudioObserver {
public chromeos::CrasAudioHandler::AudioObserver,
public SessionObserver {
public:
explicit TrayAudio(SystemTray* system_tray);
~TrayAudio() override;
......@@ -54,6 +56,9 @@ class ASH_EXPORT TrayAudio : public TrayImageItem,
void OnActiveOutputNodeChanged() override;
void OnActiveInputNodeChanged() override;
// Overridden from SessionObserver:
void OnSessionStateChanged(session_manager::SessionState state) override;
// Updates the UI views.
void Update();
......@@ -65,6 +70,8 @@ class ASH_EXPORT TrayAudio : public TrayImageItem,
tray::AudioDetailedView* audio_detail_view_;
ScopedSessionObserver session_observer_{this};
const std::unique_ptr<DetailedViewDelegate> detailed_view_delegate_;
DISALLOW_COPY_AND_ASSIGN(TrayAudio);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment