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

Side by Side Diff: content/browser/battery_status/battery_status_manager_android.cc

Issue 278043002: Battery Status API: browser-side implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fixed comments Created 6 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/battery_status/battery_status_manager.h" 5 #include "content/browser/battery_status/battery_status_manager.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "jni/BatteryStatusManager_jni.h" 8 #include "jni/BatteryStatusManager_jni.h"
9 9
10 using base::android::AttachCurrentThread; 10 using base::android::AttachCurrentThread;
11 11
12 namespace content { 12 namespace content {
13 13
14 BatteryStatusManager::BatteryStatusManager( 14 BatteryStatusManager::BatteryStatusManager(
15 const BatteryStatusUpdateCallback& callback) : callback_(callback) { 15 const BatteryStatusService::BatteryUpdateCallback& callback)
16 : callback_(callback) {
jochen (gone - plz use gerrit) 2014/05/23 08:13:36 is that clang-formatted?
timvolodine 2014/05/27 12:32:05 Done.
16 j_manager_.Reset( 17 j_manager_.Reset(
17 Java_BatteryStatusManager_getInstance( 18 Java_BatteryStatusManager_getInstance(
18 AttachCurrentThread(), base::android::GetApplicationContext())); 19 AttachCurrentThread(), base::android::GetApplicationContext()));
19 } 20 }
20 21
21 BatteryStatusManager::~BatteryStatusManager() {
22 StopListeningBatteryChange();
23 }
24
25 bool BatteryStatusManager::Register(JNIEnv* env) { 22 bool BatteryStatusManager::Register(JNIEnv* env) {
26 return RegisterNativesImpl(env); 23 return RegisterNativesImpl(env);
27 } 24 }
28 25
29 void BatteryStatusManager::GotBatteryStatus(JNIEnv*, jobject, 26 void BatteryStatusManager::GotBatteryStatus(JNIEnv*, jobject,
30 jboolean charging, jdouble charging_time, jdouble discharging_time, 27 jboolean charging, jdouble charging_time, jdouble discharging_time,
31 jdouble level) { 28 jdouble level) {
32 blink::WebBatteryStatus status; 29 blink::WebBatteryStatus status;
33 status.charging = charging; 30 status.charging = charging;
34 status.chargingTime = charging_time; 31 status.chargingTime = charging_time;
35 status.dischargingTime = discharging_time; 32 status.dischargingTime = discharging_time;
36 status.level = level; 33 status.level = level;
37 callback_.Run(status); 34 callback_.Run(status);
38 } 35 }
39 36
40 bool BatteryStatusManager::StartListeningBatteryChange() { 37 bool BatteryStatusManager::StartListeningBatteryChange() {
41 return Java_BatteryStatusManager_start( 38 return Java_BatteryStatusManager_start(
42 AttachCurrentThread(), j_manager_.obj(), 39 AttachCurrentThread(), j_manager_.obj(),
43 reinterpret_cast<intptr_t>(this)); 40 reinterpret_cast<intptr_t>(this));
44 } 41 }
45 42
46 void BatteryStatusManager::StopListeningBatteryChange() { 43 void BatteryStatusManager::StopListeningBatteryChange() {
47 Java_BatteryStatusManager_stop( 44 Java_BatteryStatusManager_stop(
48 AttachCurrentThread(), j_manager_.obj()); 45 AttachCurrentThread(), j_manager_.obj());
49 } 46 }
50 47
51 } // namespace content 48 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698