Chromium Code Reviews| Index: chrome/browser/chromeos/extensions/extension_system_event_observer.cc |
| diff --git a/chrome/browser/chromeos/extensions/extension_system_event_observer.cc b/chrome/browser/chromeos/extensions/extension_system_event_observer.cc |
| index 3938d9c7a72beae4584cd334469ea2bd3c9080f6..af3eb763838c7c4aea872bc4235e461878c19883 100644 |
| --- a/chrome/browser/chromeos/extensions/extension_system_event_observer.cc |
| +++ b/chrome/browser/chromeos/extensions/extension_system_event_observer.cc |
| @@ -5,6 +5,7 @@ |
| #include "chrome/browser/chromeos/extensions/extension_system_event_observer.h" |
| #include "chrome/browser/extensions/api/system_private/system_private_api.h" |
| +#include "chromeos/audio/cras_audio_handler.h" |
| #include "chromeos/dbus/dbus_thread_manager.h" |
| namespace chromeos { |
| @@ -12,11 +13,14 @@ namespace chromeos { |
| ExtensionSystemEventObserver::ExtensionSystemEventObserver() { |
| DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver(this); |
| DBusThreadManager::Get()->GetSessionManagerClient()->AddObserver(this); |
| + CrasAudioHandler::Get()->AddAudioObserver(this); |
| } |
| ExtensionSystemEventObserver::~ExtensionSystemEventObserver() { |
| DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver(this); |
| DBusThreadManager::Get()->GetSessionManagerClient()->RemoveObserver(this); |
| + if (CrasAudioHandler::IsInitialized()) |
| + CrasAudioHandler::Get()->RemoveAudioObserver(this); |
| } |
| void ExtensionSystemEventObserver::BrightnessChanged(int level, |
| @@ -33,4 +37,19 @@ void ExtensionSystemEventObserver::ScreenIsUnlocked() { |
| extensions::DispatchScreenUnlockedEvent(); |
| } |
| +void ExtensionSystemEventObserver::OnOutputNodeVolumeChanged(uint64_t node_id, |
| + int volume) { |
| + CrasAudioHandler* audio_handler = CrasAudioHandler::Get(); |
| + extensions::DispatchVolumeChangedEvent( |
| + audio_handler->GetOutputVolumePercent(), audio_handler->IsOutputMuted()); |
| +} |
| + |
| +void ExtensionSystemEventObserver::OnOutputMuteChanged( |
| + bool /* mute_on */, |
| + bool /* system_adjust */) { |
| + CrasAudioHandler* audio_handler = CrasAudioHandler::Get(); |
|
sky
2016/10/20 15:41:07
This is the same as OnOutputMuteChanged. Move to c
msw
2016/10/20 16:15:32
Done.
|
| + extensions::DispatchVolumeChangedEvent( |
| + audio_handler->GetOutputVolumePercent(), audio_handler->IsOutputMuted()); |
| +} |
| + |
| } // namespace chromeos |