Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/dbus/power_manager_client.h" | 5 #include "chrome/browser/chromeos/dbus/power_manager_client.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 76 weak_ptr_factory_.GetWeakPtr())); | 76 weak_ptr_factory_.GetWeakPtr())); |
| 77 | 77 |
| 78 // Monitor the D-Bus signal for power supply polling signals. | 78 // Monitor the D-Bus signal for power supply polling signals. |
| 79 power_manager_proxy_->ConnectToSignal( | 79 power_manager_proxy_->ConnectToSignal( |
| 80 power_manager::kPowerManagerInterface, | 80 power_manager::kPowerManagerInterface, |
| 81 power_manager::kPowerSupplyPollSignal, | 81 power_manager::kPowerSupplyPollSignal, |
| 82 base::Bind(&PowerManagerClientImpl::PowerSupplyPollReceived, | 82 base::Bind(&PowerManagerClientImpl::PowerSupplyPollReceived, |
| 83 weak_ptr_factory_.GetWeakPtr()), | 83 weak_ptr_factory_.GetWeakPtr()), |
| 84 base::Bind(&PowerManagerClientImpl::SignalConnected, | 84 base::Bind(&PowerManagerClientImpl::SignalConnected, |
| 85 weak_ptr_factory_.GetWeakPtr())); | 85 weak_ptr_factory_.GetWeakPtr())); |
| 86 | |
| 87 // Monitor the D-Bus signal for power state changed signals. | |
| 88 power_manager_proxy_->ConnectToSignal( | |
| 89 power_manager::kPowerManagerInterface, | |
| 90 power_manager::kPowerStateChangedSignal, | |
| 91 base::Bind(&PowerManagerClientImpl::PowerStateChangedSignalReceived, | |
| 92 weak_ptr_factory_.GetWeakPtr()), | |
| 93 base::Bind(&PowerManagerClientImpl::SignalConnected, | |
| 94 weak_ptr_factory_.GetWeakPtr())); | |
| 86 } | 95 } |
| 87 | 96 |
| 88 virtual ~PowerManagerClientImpl() { | 97 virtual ~PowerManagerClientImpl() { |
| 89 } | 98 } |
| 90 | 99 |
| 91 // PowerManagerClient override. | 100 // PowerManagerClient override. |
| 92 virtual void AddObserver(Observer* observer) { | 101 virtual void AddObserver(Observer* observer) { |
| 93 observers_.AddObserver(observer); | 102 observers_.AddObserver(observer); |
| 94 } | 103 } |
| 95 | 104 |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 204 | 213 |
| 205 // Called when a response for IncreaseScreenBrightness() is received. | 214 // Called when a response for IncreaseScreenBrightness() is received. |
| 206 void OnIncreaseScreenBrightness(dbus::Response* response) { | 215 void OnIncreaseScreenBrightness(dbus::Response* response) { |
| 207 if (!response) { | 216 if (!response) { |
| 208 LOG(ERROR) << "Failed to increase screen brightness"; | 217 LOG(ERROR) << "Failed to increase screen brightness"; |
| 209 return; | 218 return; |
| 210 } | 219 } |
| 211 VLOG(1) << "screen brightness increased: " << response->ToString(); | 220 VLOG(1) << "screen brightness increased: " << response->ToString(); |
| 212 } | 221 } |
| 213 | 222 |
| 223 // Called when a power state changed signal is received. | |
| 224 void PowerStateChangedSignalReceived(dbus::Signal* signal) { | |
| 225 VLOG(1) << "Received power state changed signal."; | |
| 226 dbus::MessageReader reader(signal); | |
| 227 std::string arg; | |
|
satorux1
2011/11/23 01:03:27
arg -> something more descriptive, like power_stat
Simon Que
2011/11/23 19:24:17
Done.
| |
| 228 if (!reader.PopString(&arg)) { | |
| 229 LOG(ERROR) << "Error reading signal args: " << signal->ToString(); | |
| 230 return; | |
| 231 } | |
| 232 if (arg != "on") | |
| 233 return; | |
| 234 // Notify all observers of resume event. | |
| 235 FOR_EACH_OBSERVER(Observer, observers_, SystemResumed()); | |
| 236 } | |
| 237 | |
| 214 // Called when a power supply polling signal is received. | 238 // Called when a power supply polling signal is received. |
| 215 void PowerSupplyPollReceived(dbus::Signal* unused_signal) { | 239 void PowerSupplyPollReceived(dbus::Signal* unused_signal) { |
| 216 VLOG(1) << "Received power supply poll signal."; | 240 VLOG(1) << "Received power supply poll signal."; |
| 217 RequestStatusUpdate(); | 241 RequestStatusUpdate(); |
| 218 } | 242 } |
| 219 | 243 |
| 220 // Called when GetAllPropertiesMethod call is complete. | 244 // Called when GetAllPropertiesMethod call is complete. |
| 221 void OnGetAllPropertiesMethod(dbus::Response* response) { | 245 void OnGetAllPropertiesMethod(dbus::Response* response) { |
| 222 if (!response) { | 246 if (!response) { |
| 223 LOG(ERROR) << "Error calling " << power_manager::kGetAllPropertiesMethod; | 247 LOG(ERROR) << "Error calling " << power_manager::kGetAllPropertiesMethod; |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 375 | 399 |
| 376 PowerManagerClient* PowerManagerClient::Create(dbus::Bus* bus) { | 400 PowerManagerClient* PowerManagerClient::Create(dbus::Bus* bus) { |
| 377 if (system::runtime_environment::IsRunningOnChromeOS()) { | 401 if (system::runtime_environment::IsRunningOnChromeOS()) { |
| 378 return new PowerManagerClientImpl(bus); | 402 return new PowerManagerClientImpl(bus); |
| 379 } else { | 403 } else { |
| 380 return new PowerManagerClientStubImpl(); | 404 return new PowerManagerClientStubImpl(); |
| 381 } | 405 } |
| 382 } | 406 } |
| 383 | 407 |
| 384 } // namespace chromeos | 408 } // namespace chromeos |
| OLD | NEW |