Index: content/browser/power_save_blocker_win.cc |
diff --git a/content/browser/power_save_blocker_win.cc b/content/browser/power_save_blocker_win.cc |
index 1ea3ac99aa9deb317d66402180137b25c14e14c8..1a7ce93a3642ac855e1d242f3381e88e45689152 100644 |
--- a/content/browser/power_save_blocker_win.cc |
+++ b/content/browser/power_save_blocker_win.cc |
@@ -1,4 +1,4 @@ |
-// Copyright (c) 2009 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
@@ -8,14 +8,23 @@ |
#include "content/browser/browser_thread.h" |
-// Runs on UI thread only. |
-void PowerSaveBlocker::ApplyBlock(bool blocking) { |
+// Called only from UI thread. |
+// static |
+void PowerSaveBlocker::ApplyBlock(PowerSaveBlockerType type) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
DWORD flags = ES_CONTINUOUS; |
- if (blocking) |
- flags |= ES_SYSTEM_REQUIRED; |
+ switch (type) { |
+ case kPowerSaveBlockPreventSystemSleep: |
+ flags |= ES_SYSTEM_REQUIRED; |
+ break; |
+ case kPowerSaveBlockPreventDisplaySleep: |
+ flags |= ES_DISPLAY_REQUIRED; |
+ break; |
+ default: |
+ break; |
+ } |
SetThreadExecutionState(flags); |
} |