Chromium Code Reviews| Index: chromeos/dbus/power_policy_controller.cc |
| diff --git a/chromeos/dbus/power_policy_controller.cc b/chromeos/dbus/power_policy_controller.cc |
| index 783d17fb3e636d76b77b95fa5a243f6160514e1a..0592a18fd35f9475375aacd3fe764576ca915f3f 100644 |
| --- a/chromeos/dbus/power_policy_controller.cc |
| +++ b/chromeos/dbus/power_policy_controller.cc |
| @@ -276,12 +276,18 @@ void PowerPolicyController::NotifyChromeIsExiting() { |
| SendCurrentPolicy(); |
| } |
| +void PowerPolicyController::SetEncryptionMigrationActive(bool active) { |
| + encryption_migration_active_ = active; |
| + SendCurrentPolicy(); |
| +} |
| + |
| PowerPolicyController::PowerPolicyController(PowerManagerClient* client) |
| : client_(client), |
| prefs_were_set_(false), |
| honor_screen_wake_locks_(true), |
| next_wake_lock_id_(1), |
| - chrome_is_exiting_(false) { |
| + chrome_is_exiting_(false), |
| + encryption_migration_active_(false) { |
| DCHECK(client_); |
| client_->AddObserver(this); |
| } |
| @@ -367,6 +373,15 @@ void PowerPolicyController::SendCurrentPolicy() { |
| } |
| } |
| + if (encryption_migration_active_ && |
| + policy.lid_closed_action() != |
| + power_manager::PowerManagementPolicy_Action_DO_NOTHING) { |
| + policy.set_lid_closed_action( |
| + power_manager::PowerManagementPolicy_Action_SUSPEND); |
|
Daniel Erat
2017/05/30 23:41:47
just out of curiosity, are you currently seeing th
dspaid
2017/05/30 23:46:39
Yes, we do observe shut down on lid close for stoc
|
| + causes += |
| + std::string((causes.empty() ? "" : ", ")) + "encryption migration"; |
| + } |
| + |
| // To avoid a race in the case where the user asks Chrome to sign out |
| // and then immediately closes the lid, override the lid-closed action |
| // so the system will stay awake while Chrome is exiting. When Chrome |