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

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: Making a better battery emu! 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"
12 #include "components/device_event_log/device_event_log.h"
Daniel Erat 2015/07/15 22:39:05 think you can delete this
mozartalouis 2015/07/15 22:55:43 Done.
10 13
11 namespace chromeos { 14 namespace chromeos {
12 15
13 FakePowerManagerClient::FakePowerManagerClient() 16 FakePowerManagerClient::FakePowerManagerClient()
14 : num_request_restart_calls_(0), 17 : num_request_restart_calls_(0),
15 num_request_shutdown_calls_(0), 18 num_request_shutdown_calls_(0),
16 num_set_policy_calls_(0), 19 num_set_policy_calls_(0),
17 num_set_is_projecting_calls_(0), 20 num_set_is_projecting_calls_(0),
18 num_pending_suspend_readiness_callbacks_(0), 21 num_pending_suspend_readiness_callbacks_(0),
19 is_projecting_(false) { 22 is_projecting_(false),
23 weak_ptr_factory_(this) {
20 } 24 }
21 25
22 FakePowerManagerClient::~FakePowerManagerClient() { 26 FakePowerManagerClient::~FakePowerManagerClient() {
23 } 27 }
24 28
25 void FakePowerManagerClient::Init(dbus::Bus* bus) { 29 void FakePowerManagerClient::Init(dbus::Bus* bus) {
30 props_.set_battery_percent(50);
31 props_.set_is_calculating_battery_time(false);
32 props_.set_battery_state(
33 power_manager::PowerSupplyProperties_BatteryState_DISCHARGING);
34 props_.set_external_power(
35 power_manager::PowerSupplyProperties_ExternalPower_DISCONNECTED);
36 props_.set_battery_time_to_full_sec(0);
37 props_.set_battery_time_to_empty_sec(18000);
26 } 38 }
27 39
28 void FakePowerManagerClient::AddObserver(Observer* observer) { 40 void FakePowerManagerClient::AddObserver(Observer* observer) {
29 observers_.AddObserver(observer); 41 observers_.AddObserver(observer);
30 } 42 }
31 43
32 void FakePowerManagerClient::RemoveObserver(Observer* observer) { 44 void FakePowerManagerClient::RemoveObserver(Observer* observer) {
33 observers_.RemoveObserver(observer); 45 observers_.RemoveObserver(observer);
34 } 46 }
35 47
36 bool FakePowerManagerClient::HasObserver(const Observer* observer) const { 48 bool FakePowerManagerClient::HasObserver(const Observer* observer) const {
37 return false; 49 return observers_.HasObserver(observer);
38 } 50 }
39 51
40 void FakePowerManagerClient::SetRenderProcessManagerDelegate( 52 void FakePowerManagerClient::SetRenderProcessManagerDelegate(
41 base::WeakPtr<RenderProcessManagerDelegate> delegate) { 53 base::WeakPtr<RenderProcessManagerDelegate> delegate) {
42 render_process_manager_delegate_ = delegate; 54 render_process_manager_delegate_ = delegate;
43 } 55 }
44 56
45 void FakePowerManagerClient::DecreaseScreenBrightness(bool allow_off) { 57 void FakePowerManagerClient::DecreaseScreenBrightness(bool allow_off) {
46 } 58 }
47 59
48 void FakePowerManagerClient::IncreaseScreenBrightness() { 60 void FakePowerManagerClient::IncreaseScreenBrightness() {
49 } 61 }
50 62
51 void FakePowerManagerClient::SetScreenBrightnessPercent(double percent, 63 void FakePowerManagerClient::SetScreenBrightnessPercent(double percent,
52 bool gradual) { 64 bool gradual) {
53 } 65 }
54 66
55 void FakePowerManagerClient::GetScreenBrightnessPercent( 67 void FakePowerManagerClient::GetScreenBrightnessPercent(
56 const GetScreenBrightnessPercentCallback& callback) { 68 const GetScreenBrightnessPercentCallback& callback) {
57 } 69 }
58 70
59 void FakePowerManagerClient::DecreaseKeyboardBrightness() { 71 void FakePowerManagerClient::DecreaseKeyboardBrightness() {
60 } 72 }
61 73
62 void FakePowerManagerClient::IncreaseKeyboardBrightness() { 74 void FakePowerManagerClient::IncreaseKeyboardBrightness() {
63 } 75 }
64 76
65 void FakePowerManagerClient::RequestStatusUpdate() { 77 void FakePowerManagerClient::RequestStatusUpdate() {
78 // RequestStatusUpdate() calls and notifies the observers
79 // asynchronously on a real device. On the fake implementation, we call
80 // observers in a posted task to emulate the same behavior.
81 base::ThreadTaskRunnerHandle::Get()->PostTask(
82 FROM_HERE, base::Bind(&FakePowerManagerClient::NotifyObservers,
83 weak_ptr_factory_.GetWeakPtr()));
66 } 84 }
67 85
68 void FakePowerManagerClient::RequestSuspend() { 86 void FakePowerManagerClient::RequestSuspend() {
69 } 87 }
70 88
71 void FakePowerManagerClient::RequestRestart() { 89 void FakePowerManagerClient::RequestRestart() {
72 ++num_request_restart_calls_; 90 ++num_request_restart_calls_;
73 } 91 }
74 92
75 void FakePowerManagerClient::RequestShutdown() { 93 void FakePowerManagerClient::RequestShutdown() {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 FOR_EACH_OBSERVER(Observer, observers_, DarkSuspendImminent()); 140 FOR_EACH_OBSERVER(Observer, observers_, DarkSuspendImminent());
123 } 141 }
124 142
125 void FakePowerManagerClient::SendPowerButtonEvent( 143 void FakePowerManagerClient::SendPowerButtonEvent(
126 bool down, 144 bool down,
127 const base::TimeTicks& timestamp) { 145 const base::TimeTicks& timestamp) {
128 FOR_EACH_OBSERVER(Observer, observers_, 146 FOR_EACH_OBSERVER(Observer, observers_,
129 PowerButtonEventReceived(down, timestamp)); 147 PowerButtonEventReceived(down, timestamp));
130 } 148 }
131 149
150 void FakePowerManagerClient::UpdatePowerProperties(
151 const power_manager::PowerSupplyProperties& power_props) {
152 props_ = power_props;
153 NotifyObservers();
154 }
155
156 void FakePowerManagerClient::NotifyObservers() {
157 FOR_EACH_OBSERVER(Observer, observers_, PowerChanged(props_));
158 }
159
132 void FakePowerManagerClient::HandleSuspendReadiness() { 160 void FakePowerManagerClient::HandleSuspendReadiness() {
133 CHECK(num_pending_suspend_readiness_callbacks_ > 0); 161 CHECK(num_pending_suspend_readiness_callbacks_ > 0);
134 162
135 --num_pending_suspend_readiness_callbacks_; 163 --num_pending_suspend_readiness_callbacks_;
136 } 164 }
137 165
138 } // namespace chromeos 166 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698