diff options
author | Dianne Hackborn <hackbod@google.com> | 2010-08-13 16:00:44 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-08-13 16:00:44 -0700 |
commit | 66b0343e9e32203cdd39b854852cf575ca2fcd6b (patch) | |
tree | 100edccff935c8dc4fa32e0e4f9ae43913a359e9 /tests | |
parent | 8cfd3c01e4582a587765588c02234527e7808ca0 (diff) | |
parent | a8d9291d7f93d1aa0d24d71d65c7de2894812177 (diff) | |
download | frameworks_base-66b0343e9e32203cdd39b854852cf575ca2fcd6b.zip frameworks_base-66b0343e9e32203cdd39b854852cf575ca2fcd6b.tar.gz frameworks_base-66b0343e9e32203cdd39b854852cf575ca2fcd6b.tar.bz2 |
am a8d9291d: Merge "Various battery info things:" into gingerbread
Merge commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177' into gingerbread-plus-aosp
* commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177':
Various battery info things:
Diffstat (limited to 'tests')
-rw-r--r-- | tests/BatteryWaster/res/layout/battery_waster.xml | 10 | ||||
-rw-r--r-- | tests/BatteryWaster/res/values/strings.xml | 2 | ||||
-rw-r--r-- | tests/BatteryWaster/src/com/android/batterywaster/BatteryWaster.java | 67 |
3 files changed, 67 insertions, 12 deletions
diff --git a/tests/BatteryWaster/res/layout/battery_waster.xml b/tests/BatteryWaster/res/layout/battery_waster.xml index e1cb6bf..36aa68b 100644 --- a/tests/BatteryWaster/res/layout/battery_waster.xml +++ b/tests/BatteryWaster/res/layout/battery_waster.xml @@ -30,6 +30,16 @@ android:text="@string/waste_away" /> + <CheckBox android:id="@+id/checkbox_wake" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginLeft="25dp" + android:layout_marginTop="25dp" + android:textSize="18sp" + android:textColor="#ffffffff" + android:text="@string/wake_away" + /> + <ScrollView android:id="@+id/scroll" android:layout_width="match_parent" android:layout_height="0px" diff --git a/tests/BatteryWaster/res/values/strings.xml b/tests/BatteryWaster/res/values/strings.xml index 46c5fa1..a3b849a 100644 --- a/tests/BatteryWaster/res/values/strings.xml +++ b/tests/BatteryWaster/res/values/strings.xml @@ -18,5 +18,7 @@ <string name="waste_away">Discharge my battery!</string> + <string name="wake_away">Keep my device awake!</string> + </resources> diff --git a/tests/BatteryWaster/src/com/android/batterywaster/BatteryWaster.java b/tests/BatteryWaster/src/com/android/batterywaster/BatteryWaster.java index 8ea7e00..499330f 100644 --- a/tests/BatteryWaster/src/com/android/batterywaster/BatteryWaster.java +++ b/tests/BatteryWaster/src/com/android/batterywaster/BatteryWaster.java @@ -41,6 +41,8 @@ public class BatteryWaster extends Activity { PowerManager.WakeLock mWakeLock; SpinThread mThread; + boolean mWasting, mWaking; + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -50,6 +52,7 @@ public class BatteryWaster extends Activity { setContentView(R.layout.battery_waster); findViewById(R.id.checkbox).setOnClickListener(mClickListener); + findViewById(R.id.checkbox_wake).setOnClickListener(mWakeClickListener); mLog = (TextView)findViewById(R.id.log); mDateFormat = DateFormat.getInstance(); @@ -67,9 +70,18 @@ public class BatteryWaster extends Activity { @Override public void onPause() { + super.onPause(); stopRunning(); } + @Override + public void onDestroy() { + super.onDestroy(); + if (mWakeLock.isHeld()) { + mWakeLock.release(); + } + } + View.OnClickListener mClickListener = new View.OnClickListener() { public void onClick(View v) { CheckBox checkbox = (CheckBox)v; @@ -81,23 +93,54 @@ public class BatteryWaster extends Activity { } }; + View.OnClickListener mWakeClickListener = new View.OnClickListener() { + public void onClick(View v) { + CheckBox checkbox = (CheckBox)v; + if (checkbox.isChecked()) { + mWaking = true; + updateWakeLock(); + } else { + mWaking = false; + updateWakeLock(); + } + } + }; + void startRunning() { - log("Start"); - registerReceiver(mReceiver, mFilter); - mWakeLock.acquire(); - if (mThread == null) { - mThread = new SpinThread(); - mThread.start(); + if (!mWasting) { + log("Start"); + registerReceiver(mReceiver, mFilter); + mWasting = true; + updateWakeLock(); + if (mThread == null) { + mThread = new SpinThread(); + mThread.start(); + } } } void stopRunning() { - log("Stop"); - unregisterReceiver(mReceiver); - mWakeLock.release(); - if (mThread != null) { - mThread.quit(); - mThread = null; + if (mWasting) { + log("Stop"); + unregisterReceiver(mReceiver); + mWasting = false; + updateWakeLock(); + if (mThread != null) { + mThread.quit(); + mThread = null; + } + } + } + + void updateWakeLock() { + if (mWasting || mWaking) { + if (!mWakeLock.isHeld()) { + mWakeLock.acquire(); + } + } else { + if (mWakeLock.isHeld()) { + mWakeLock.release(); + } } } |