Chromium Code Reviews| Index: chromeos/audio/cras_audio_handler.h |
| diff --git a/chromeos/audio/cras_audio_handler.h b/chromeos/audio/cras_audio_handler.h |
| index c9110718e4a332a7bc0dde2b5a02d446857a8e2f..f78ff14cf4004a7ee1e34652e2a49dfe54292d05 100644 |
| --- a/chromeos/audio/cras_audio_handler.h |
| +++ b/chromeos/audio/cras_audio_handler.h |
| @@ -38,6 +38,15 @@ class CHROMEOS_EXPORT CrasAudioHandler : public CrasAudioClient::Observer, |
| AudioDeviceCompare> AudioDevicePriorityQueue; |
| typedef std::vector<uint64_t> NodeIdList; |
| + // Volume change reasons that are not user-initiated. |
| + enum AutomatedVolumeChangeReason { |
| + // Indicates it is from intializaing audio state. |
| + VOLUME_CHANGE_INITIALIZING_AUDIO_STATE, |
| + |
| + // Indicates it is from restoring volume in maximimize mode screenshot. |
| + VOLUME_CHANGE_MAXIMIZE_MODE_SCREENSHOT, |
| + }; |
| + |
| class AudioObserver { |
| public: |
| // Called when an active output volume changed. |
| @@ -155,10 +164,16 @@ class CHROMEOS_EXPORT CrasAudioHandler : public CrasAudioClient::Observer, |
| virtual bool has_alternative_input() const; |
| virtual bool has_alternative_output() const; |
| - // Sets all active output devices' volume level to |volume_percent|, whose |
| + // Sets all active output devices' volume levels to |volume_percent|, whose |
| // range is from 0-100%. |
| virtual void SetOutputVolumePercent(int volume_percent); |
| + // Sets all active output devices' volume levels to |volume_percent|, whose |
| + // range is from 0-100%, without notifying observers. |
| + virtual void SetOutputVolumePercentWithoutNotifyingObservers( |
| + int volume_percent, |
| + AutomatedVolumeChangeReason reason); |
| + |
| // Sets all active input devices' gain level to |gain_percent|, whose range is |
| // from 0-100%. |
| virtual void SetInputGainPercent(int gain_percent); |
| @@ -432,10 +447,10 @@ class CHROMEOS_EXPORT CrasAudioHandler : public CrasAudioClient::Observer, |
| bool cras_service_available_ = false; |
| - bool initializing_audio_state_ = false; |
| + std::deque<AutomatedVolumeChangeReason> automated_volume_change_reasons_; |
|
Daniel Erat
2016/08/02 16:31:38
i'd add a brief comment explaining how this is use
Qiang(Joe) Xu
2016/08/02 22:45:58
done. That looks nice.
|
| + |
| int init_volume_; |
| uint64_t init_node_id_; |
| - int init_volume_count_ = 0; |
| base::WeakPtrFactory<CrasAudioHandler> weak_ptr_factory_; |