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

Unified Diff: chromeos/dbus/fake_power_manager_client.cc

Issue 2474913004: Tablet-like power button behavior on Convertible/Tablet ChromeOS devices (Closed)
Patch Set: cr based on comments Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: chromeos/dbus/fake_power_manager_client.cc
diff --git a/chromeos/dbus/fake_power_manager_client.cc b/chromeos/dbus/fake_power_manager_client.cc
index 6bee1ea7369bfc50732bb4412c02ed2ee6ce210e..20e41fc9e3c1a0ff76e7a1ac3342bf736cdd2249 100644
--- a/chromeos/dbus/fake_power_manager_client.cc
+++ b/chromeos/dbus/fake_power_manager_client.cc
@@ -14,7 +14,10 @@ namespace chromeos {
namespace {
// Minimum power for a USB power source to be classified as AC.
-const double kUsbMinAcWatts = 24;
+constexpr double kUsbMinAcWatts = 24;
+
+// A non-zero brightness used for test.
+constexpr int kNonZeroBrightnessForTest = 10;
}
FakePowerManagerClient::FakePowerManagerClient()
@@ -137,6 +140,8 @@ void FakePowerManagerClient::SetPowerSource(const std::string& id) {
void FakePowerManagerClient::SetBacklightsForcedOff(bool forced_off) {
backlights_forced_off_ = forced_off;
+ forced_off ? SendBrightnessChanged(0, true)
+ : SendBrightnessChanged(kNonZeroBrightnessForTest, true);
}
void FakePowerManagerClient::GetBacklightsForcedOff(
@@ -164,6 +169,8 @@ bool FakePowerManagerClient::PopVideoActivityReport() {
}
void FakePowerManagerClient::SendSuspendImminent() {
+ // TODO(warx): SendBrightnessChanged(zero, false) may be needed here when
+ // TabletPowerButtonControllerTest covers SendSuspendImminent.
for (auto& observer : observers_)
observer.SuspendImminent();
if (render_process_manager_delegate_)
@@ -171,6 +178,8 @@ void FakePowerManagerClient::SendSuspendImminent() {
}
void FakePowerManagerClient::SendSuspendDone() {
+ // TODO(warx): SendBrightnessChanged(non-zero, false) may be needed here when
+ // TabletPowerButtonControllerTest covers SendSuspendDone.
if (render_process_manager_delegate_)
render_process_manager_delegate_->SuspendDone();
@@ -196,6 +205,12 @@ void FakePowerManagerClient::UpdatePowerProperties(
NotifyObservers();
}
+void FakePowerManagerClient::SendBrightnessChanged(int level,
+ bool user_initiated) {
+ for (auto& observer : observers_)
+ observer.BrightnessChanged(level, user_initiated);
+}
+
void FakePowerManagerClient::NotifyObservers() {
for (auto& observer : observers_)
observer.PowerChanged(props_);
« ash/wm/power_button_controller.cc ('K') | « chromeos/dbus/fake_power_manager_client.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698