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

Unified Diff: chrome/browser/chromeos/cros/power_library.cc

Issue 7891021: Use stub impl when libcros fails to load (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix power manager stub impl Created 9 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/cros/power_library.cc
diff --git a/chrome/browser/chromeos/cros/power_library.cc b/chrome/browser/chromeos/cros/power_library.cc
index dbedff9286f14b6ab54f04a70cbce470124a69d9..a804f7cbc52d96839378901d285f649a2a89e5ef 100644
--- a/chrome/browser/chromeos/cros/power_library.cc
+++ b/chrome/browser/chromeos/cros/power_library.cc
@@ -38,12 +38,11 @@ class PowerLibraryImpl : public PowerLibrary {
// Begin PowerLibrary implementation.
virtual void Init() OVERRIDE {
- if (CrosLibrary::Get()->EnsureLoaded()) {
- power_status_connection_ =
- chromeos::MonitorPowerStatus(&PowerStatusChangedHandler, this);
- resume_status_connection_ =
- chromeos::MonitorResume(&SystemResumedHandler, this);
- }
+ DCHECK(CrosLibrary::Get()->libcros_loaded());
+ power_status_connection_ =
+ chromeos::MonitorPowerStatus(&PowerStatusChangedHandler, this);
+ resume_status_connection_ =
+ chromeos::MonitorResume(&SystemResumedHandler, this);
}
virtual void AddObserver(Observer* observer) OVERRIDE {
@@ -85,9 +84,6 @@ class PowerLibraryImpl : public PowerLibrary {
}
virtual void EnableScreenLock(bool enable) OVERRIDE {
- if (!CrosLibrary::Get()->EnsureLoaded())
- return;
-
// Make sure we run on FILE thread becuase chromeos::EnableScreenLock
// would write power manager config file to disk.
if (!BrowserThread::CurrentlyOn(BrowserThread::FILE)) {
@@ -101,14 +97,19 @@ class PowerLibraryImpl : public PowerLibrary {
}
virtual void RequestRestart() OVERRIDE {
- if (CrosLibrary::Get()->EnsureLoaded())
- chromeos::RequestRestart();
+ chromeos::RequestRestart();
}
virtual void RequestShutdown() OVERRIDE {
- if (CrosLibrary::Get()->EnsureLoaded())
- chromeos::RequestShutdown();
+ chromeos::RequestShutdown();
}
+
+ virtual void RequestStatusUpdate() OVERRIDE {
+ PowerInformation information;
+ chromeos::RetrievePowerInformation(&information);
+ UpdatePowerStatus(information.power_status);
+ }
+
// End PowerLibrary implementation.
private:
@@ -190,13 +191,8 @@ class PowerLibraryStubImpl : public PowerLibrary {
public:
PowerLibraryStubImpl()
: discharging_(true),
- battery_percentage_(20),
+ battery_percentage_(80),
satorux1 2011/09/16 20:05:55 This seems to be unrelated to the refactoring. Wha
stevenjb 2011/09/16 21:44:24 Will do.
pause_count_(0) {
- timer_.Start(
- FROM_HERE,
- base::TimeDelta::FromMilliseconds(100),
- this,
- &PowerLibraryStubImpl::Update);
}
virtual ~PowerLibraryStubImpl() {}
@@ -245,9 +241,25 @@ class PowerLibraryStubImpl : public PowerLibrary {
callback->Run(0);
delete callback;
}
+
virtual void EnableScreenLock(bool enable) OVERRIDE {}
+
virtual void RequestRestart() OVERRIDE {}
+
virtual void RequestShutdown() OVERRIDE {}
+
+ virtual void RequestStatusUpdate() OVERRIDE {
+ if (!timer_.IsRunning()) {
+ timer_.Start(
+ FROM_HERE,
+ base::TimeDelta::FromMilliseconds(100),
+ this,
+ &PowerLibraryStubImpl::Update);
+ } else {
+ timer_.Stop();
+ }
+ }
+
// End PowerLibrary implementation.
private:

Powered by Google App Engine
This is Rietveld 408576698