summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjennyz@chromium.org <jennyz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-29 13:24:19 +0000
committerjennyz@chromium.org <jennyz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-29 13:24:19 +0000
commit6d84e25c26ee33424552e36fe05b7724cbe0a676 (patch)
tree042e8cb57e7d0ae9425f274d0f0942752e51ee1f
parent2a1eb8883ca7e9d89a34029448db3345844a4547 (diff)
downloadchromium_src-6d84e25c26ee33424552e36fe05b7724cbe0a676.zip
chromium_src-6d84e25c26ee33424552e36fe05b7724cbe0a676.tar.gz
chromium_src-6d84e25c26ee33424552e36fe05b7724cbe0a676.tar.bz2
Integrate cras audio dbus api changes for transiting from SetOyutputMute to SetOutputUserMute into chrome.
BUG=244597 Review URL: https://chromiumcodereview.appspot.com/18224003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209294 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chromeos/audio/cras_audio_handler.cc2
-rw-r--r--chromeos/dbus/cras_audio_client.cc23
-rw-r--r--chromeos/dbus/cras_audio_client.h4
-rw-r--r--chromeos/dbus/volume_state.cc16
-rw-r--r--chromeos/dbus/volume_state.h3
5 files changed, 26 insertions, 22 deletions
diff --git a/chromeos/audio/cras_audio_handler.cc b/chromeos/audio/cras_audio_handler.cc
index 9e1a892..b94c1c5 100644
--- a/chromeos/audio/cras_audio_handler.cc
+++ b/chromeos/audio/cras_audio_handler.cc
@@ -458,7 +458,7 @@ bool CrasAudioHandler::SetOutputMuteInternal(bool mute_on) {
return false;
chromeos::DBusThreadManager::Get()->GetCrasAudioClient()->
- SetOutputMute(mute_on);
+ SetOutputUserMute(mute_on);
return true;
}
diff --git a/chromeos/dbus/cras_audio_client.cc b/chromeos/dbus/cras_audio_client.cc
index ec20ea7..15aa5e4 100644
--- a/chromeos/dbus/cras_audio_client.cc
+++ b/chromeos/dbus/cras_audio_client.cc
@@ -139,9 +139,9 @@ class CrasAudioClientImpl : public CrasAudioClient {
dbus::ObjectProxy::EmptyResponseCallback());
}
- virtual void SetOutputMute(bool mute_on) OVERRIDE {
+ virtual void SetOutputUserMute(bool mute_on) OVERRIDE {
dbus::MethodCall method_call(cras::kCrasControlInterface,
- cras::kSetOutputMute);
+ cras::kSetOutputUserMute);
dbus::MessageWriter writer(&method_call);
writer.AppendBool(mute_on);
cras_proxy_->CallMethod(
@@ -220,13 +220,15 @@ class CrasAudioClientImpl : public CrasAudioClient {
// Called when a OutputMuteChanged signal is received.
void OutputMuteChangedReceived(dbus::Signal* signal) {
+ // Chrome should always call SetOutputUserMute api to set the output
+ // mute state and monitor user_mute state from OutputMuteChanged signal.
dbus::MessageReader reader(signal);
- bool mute;
- if (!reader.PopBool(&mute)) {
+ bool system_mute, user_mute;
+ if (!reader.PopBool(&system_mute) || !reader.PopBool(&user_mute)) {
LOG(ERROR) << "Error reading signal from cras:"
<< signal->ToString();
}
- FOR_EACH_OBSERVER(Observer, observers_, OutputMuteChanged(mute));
+ FOR_EACH_OBSERVER(Observer, observers_, OutputMuteChanged(user_mute));
}
// Called when a InputGainChanged signal is received.
@@ -282,9 +284,10 @@ class CrasAudioClientImpl : public CrasAudioClient {
if (response) {
dbus::MessageReader reader(response);
if (!reader.PopInt32(&volume_state.output_volume) ||
- !reader.PopBool(&volume_state.output_mute) ||
+ !reader.PopBool(&volume_state.output_system_mute) ||
!reader.PopInt32(&volume_state.input_gain) ||
- !reader.PopBool(&volume_state.input_mute)) {
+ !reader.PopBool(&volume_state.input_mute) ||
+ !reader.PopBool(&volume_state.output_user_mute)) {
success = false;
LOG(ERROR) << "Error reading response from cras: "
<< response->ToString();
@@ -469,11 +472,11 @@ class CrasAudioClientStubImpl : public CrasAudioClient {
OutputVolumeChanged(volume_state_.output_volume));
}
- virtual void SetOutputMute(bool mute_on) OVERRIDE {
- volume_state_.output_mute = mute_on;
+ virtual void SetOutputUserMute(bool mute_on) OVERRIDE {
+ volume_state_.output_user_mute = mute_on;
FOR_EACH_OBSERVER(Observer,
observers_,
- OutputMuteChanged(volume_state_.output_mute));
+ OutputMuteChanged(volume_state_.output_user_mute));
}
virtual void SetInputGain(int32 input_gain) OVERRIDE {
diff --git a/chromeos/dbus/cras_audio_client.h b/chromeos/dbus/cras_audio_client.h
index 4ca0fea..20d3e86 100644
--- a/chromeos/dbus/cras_audio_client.h
+++ b/chromeos/dbus/cras_audio_client.h
@@ -81,8 +81,8 @@ class CHROMEOS_EXPORT CrasAudioClient {
// Sets output volume to |volume|, in the range of [0, 100].
virtual void SetOutputVolume(int32 volume) = 0;
- // Sets output mute state to |mute_on| value.
- virtual void SetOutputMute(bool mute_on) = 0;
+ // Sets output mute from user action.
+ virtual void SetOutputUserMute(bool mute_on) = 0;
// Sets input gain to |input_gain|. |input_gain| is specified in dBFS * 100.
virtual void SetInputGain(int32 input_gain) = 0;
diff --git a/chromeos/dbus/volume_state.cc b/chromeos/dbus/volume_state.cc
index 7961520..9f105c4 100644
--- a/chromeos/dbus/volume_state.cc
+++ b/chromeos/dbus/volume_state.cc
@@ -11,9 +11,10 @@ namespace chromeos {
VolumeState::VolumeState()
: output_volume(0),
- output_mute(false),
+ output_system_mute(false),
input_gain(0),
- input_mute(false) {
+ input_mute(false),
+ output_user_mute(false) {
}
std::string VolumeState::ToString() const {
@@ -22,18 +23,17 @@ std::string VolumeState::ToString() const {
"output_volume = %d ",
output_volume);
base::StringAppendF(&result,
- "output_mute = %s ",
- output_mute ? "true" : "false");
- base::StringAppendF(&result,
- "output_mute = %s ",
- output_mute ? "true" : "false");
+ "output_system_mute = %s ",
+ output_system_mute ? "true" : "false");
base::StringAppendF(&result,
"input_gain = %d ",
input_gain);
base::StringAppendF(&result,
"input_mute = %s ",
input_mute ? "true" : "false");
-
+ base::StringAppendF(&result,
+ "output_user_mute = %s ",
+ output_user_mute ? "true" : "false");
return result;
}
diff --git a/chromeos/dbus/volume_state.h b/chromeos/dbus/volume_state.h
index 7fafd6e..0d0a305 100644
--- a/chromeos/dbus/volume_state.h
+++ b/chromeos/dbus/volume_state.h
@@ -14,9 +14,10 @@ namespace chromeos {
struct CHROMEOS_EXPORT VolumeState {
int32 output_volume;
- bool output_mute;
+ bool output_system_mute;
int32 input_gain;
bool input_mute;
+ bool output_user_mute;
VolumeState();
std::string ToString() const;