Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(522)

Side by Side Diff: chromeos/dbus/fake_power_manager_client.cc

Issue 1206733002: ChromeOs Power Emulation Impl (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nits and includes Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "chromeos/dbus/fake_power_manager_client.h" 5 #include "chromeos/dbus/fake_power_manager_client.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/location.h"
10 #include "base/thread_task_runner_handle.h"
9 #include "base/time/time.h" 11 #include "base/time/time.h"
10 12
11 namespace chromeos { 13 namespace chromeos {
12 14
13 FakePowerManagerClient::FakePowerManagerClient() 15 FakePowerManagerClient::FakePowerManagerClient()
14 : num_request_restart_calls_(0), 16 : num_request_restart_calls_(0),
15 num_request_shutdown_calls_(0), 17 num_request_shutdown_calls_(0),
16 num_set_policy_calls_(0), 18 num_set_policy_calls_(0),
17 num_set_is_projecting_calls_(0), 19 num_set_is_projecting_calls_(0),
18 num_pending_suspend_readiness_callbacks_(0), 20 num_pending_suspend_readiness_callbacks_(0),
19 is_projecting_(false) { 21 is_projecting_(false),
22 weak_ptr_factory_(this) {
20 } 23 }
21 24
22 FakePowerManagerClient::~FakePowerManagerClient() { 25 FakePowerManagerClient::~FakePowerManagerClient() {
23 } 26 }
24 27
25 void FakePowerManagerClient::Init(dbus::Bus* bus) { 28 void FakePowerManagerClient::Init(dbus::Bus* bus) {
29 props_.set_battery_percent(50);
30 props_.set_is_calculating_battery_time(false);
31 props_.set_battery_state(
32 power_manager::PowerSupplyProperties_BatteryState_DISCHARGING);
33 props_.set_external_power(
34 power_manager::PowerSupplyProperties_ExternalPower_DISCONNECTED);
35 props_.set_battery_time_to_full_sec(0);
36 props_.set_battery_time_to_empty_sec(18000);
26 } 37 }
27 38
28 void FakePowerManagerClient::AddObserver(Observer* observer) { 39 void FakePowerManagerClient::AddObserver(Observer* observer) {
29 observers_.AddObserver(observer); 40 observers_.AddObserver(observer);
30 } 41 }
31 42
32 void FakePowerManagerClient::RemoveObserver(Observer* observer) { 43 void FakePowerManagerClient::RemoveObserver(Observer* observer) {
33 observers_.RemoveObserver(observer); 44 observers_.RemoveObserver(observer);
34 } 45 }
35 46
36 bool FakePowerManagerClient::HasObserver(const Observer* observer) const { 47 bool FakePowerManagerClient::HasObserver(const Observer* observer) const {
37 return false; 48 return observers_.HasObserver(observer);
38 } 49 }
39 50
40 void FakePowerManagerClient::SetRenderProcessManagerDelegate( 51 void FakePowerManagerClient::SetRenderProcessManagerDelegate(
41 base::WeakPtr<RenderProcessManagerDelegate> delegate) { 52 base::WeakPtr<RenderProcessManagerDelegate> delegate) {
42 render_process_manager_delegate_ = delegate; 53 render_process_manager_delegate_ = delegate;
43 } 54 }
44 55
45 void FakePowerManagerClient::DecreaseScreenBrightness(bool allow_off) { 56 void FakePowerManagerClient::DecreaseScreenBrightness(bool allow_off) {
46 } 57 }
47 58
48 void FakePowerManagerClient::IncreaseScreenBrightness() { 59 void FakePowerManagerClient::IncreaseScreenBrightness() {
49 } 60 }
50 61
51 void FakePowerManagerClient::SetScreenBrightnessPercent(double percent, 62 void FakePowerManagerClient::SetScreenBrightnessPercent(double percent,
52 bool gradual) { 63 bool gradual) {
53 } 64 }
54 65
55 void FakePowerManagerClient::GetScreenBrightnessPercent( 66 void FakePowerManagerClient::GetScreenBrightnessPercent(
56 const GetScreenBrightnessPercentCallback& callback) { 67 const GetScreenBrightnessPercentCallback& callback) {
57 } 68 }
58 69
59 void FakePowerManagerClient::DecreaseKeyboardBrightness() { 70 void FakePowerManagerClient::DecreaseKeyboardBrightness() {
60 } 71 }
61 72
62 void FakePowerManagerClient::IncreaseKeyboardBrightness() { 73 void FakePowerManagerClient::IncreaseKeyboardBrightness() {
63 } 74 }
64 75
65 void FakePowerManagerClient::RequestStatusUpdate() { 76 void FakePowerManagerClient::RequestStatusUpdate() {
77 // RequestStatusUpdate() calls and notifies the observers
78 // asynchronously on a real device. On the fake implementation, we call
79 // observers in a posted task to emulate the same behavior.
80 base::ThreadTaskRunnerHandle::Get()->PostTask(
81 FROM_HERE, base::Bind(&FakePowerManagerClient::NotifyObservers,
82 weak_ptr_factory_.GetWeakPtr()));
66 } 83 }
67 84
68 void FakePowerManagerClient::RequestSuspend() { 85 void FakePowerManagerClient::RequestSuspend() {
69 } 86 }
70 87
71 void FakePowerManagerClient::RequestRestart() { 88 void FakePowerManagerClient::RequestRestart() {
72 ++num_request_restart_calls_; 89 ++num_request_restart_calls_;
73 } 90 }
74 91
75 void FakePowerManagerClient::RequestShutdown() { 92 void FakePowerManagerClient::RequestShutdown() {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 FOR_EACH_OBSERVER(Observer, observers_, DarkSuspendImminent()); 139 FOR_EACH_OBSERVER(Observer, observers_, DarkSuspendImminent());
123 } 140 }
124 141
125 void FakePowerManagerClient::SendPowerButtonEvent( 142 void FakePowerManagerClient::SendPowerButtonEvent(
126 bool down, 143 bool down,
127 const base::TimeTicks& timestamp) { 144 const base::TimeTicks& timestamp) {
128 FOR_EACH_OBSERVER(Observer, observers_, 145 FOR_EACH_OBSERVER(Observer, observers_,
129 PowerButtonEventReceived(down, timestamp)); 146 PowerButtonEventReceived(down, timestamp));
130 } 147 }
131 148
149 void FakePowerManagerClient::UpdatePowerProperties(
150 const power_manager::PowerSupplyProperties& power_props) {
151 props_ = power_props;
152 NotifyObservers();
153 }
154
155 void FakePowerManagerClient::NotifyObservers() {
156 FOR_EACH_OBSERVER(Observer, observers_, PowerChanged(props_));
157 }
158
132 void FakePowerManagerClient::HandleSuspendReadiness() { 159 void FakePowerManagerClient::HandleSuspendReadiness() {
133 CHECK(num_pending_suspend_readiness_callbacks_ > 0); 160 CHECK(num_pending_suspend_readiness_callbacks_ > 0);
134 161
135 --num_pending_suspend_readiness_callbacks_; 162 --num_pending_suspend_readiness_callbacks_;
136 } 163 }
137 164
138 } // namespace chromeos 165 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/fake_power_manager_client.h ('k') | chromeos/dbus/fake_power_manager_client_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698