Chromium Code Reviews| Index: base/power_monitor/power_monitor_android.cc |
| diff --git a/base/system_monitor/system_monitor_android.cc b/base/power_monitor/power_monitor_android.cc |
| similarity index 57% |
| rename from base/system_monitor/system_monitor_android.cc |
| rename to base/power_monitor/power_monitor_android.cc |
| index 4e1a16b3e91f379f26bd829b55f62f08ca9cba46..eaf72ac249af1efdea2d23f57f8ebeaebd403532 100644 |
| --- a/base/system_monitor/system_monitor_android.cc |
| +++ b/base/power_monitor/power_monitor_android.cc |
| @@ -2,22 +2,39 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#include "base/system_monitor/system_monitor.h" |
| +#include "base/power_monitor/power_monitor.h" |
| #include "jni/SystemMonitor_jni.h" |
| namespace base { |
| +namespace { |
| + |
| +static PowerMonitor::Signaler* g_power_signaler = NULL; |
| + |
| +} |
| + |
| namespace android { |
| // Native implementation of SystemMonitor.java. |
| void OnBatteryChargingChanged(JNIEnv* env, |
| jclass clazz) { |
| - SystemMonitor::Get()->ProcessPowerMessage(SystemMonitor::POWER_STATE_EVENT); |
| + CHECK(g_power_signaler); |
|
vandebo (ex-Chrome)
2012/11/01 16:50:26
There doesn't seem to be anything unregistering th
Hongbo Min
2012/11/02 00:29:07
Done.
|
| + g_power_signaler->ProcessPowerEvent(PowerMonitor::POWER_STATE_EVENT); |
| } |
| } // namespace android |
| -bool SystemMonitor::IsBatteryPower() { |
| +void PowerMonitor::PlatformInit() { |
| + CHECK(!g_power_signaler); |
| + g_power_signaler = PowerMonitor::Get()->GetSignalerOnce(); |
| +} |
| + |
| +void PowerMonitor::PlatformDestroy() { |
| + delete g_power_signaler; |
| + g_power_signaler = NULL; |
| +} |
| + |
| +bool PowerMonitor::IsBatteryPower() { |
| JNIEnv* env = base::android::AttachCurrentThread(); |
| return base::android::Java_SystemMonitor_isBatteryPower(env); |
| } |