summaryrefslogtreecommitdiff
-rw-r--r--AndroidManifest.xml5
-rw-r--r--res/values-de/strings.xml26
-rw-r--r--res/values/strings.xml1
-rw-r--r--res/xml/preferences.xml1
-rw-r--r--src/net/laserbunny/resttimer/RestTimer.java35
5 files changed, 64 insertions, 4 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a5e9b36..a7ba9bb 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.laserbunny.resttimer"
- android:versionCode="1"
- android:versionName="1.0">
+ android:versionCode="2"
+ android:versionName="1.1">
<uses-permission android:name="android.permission.VIBRATE"/>
+ <uses-permission android:name="android.permission.WAKE_LOCK"/>
<application android:icon="@drawable/icon" android:label="@string/app_name" >
<activity android:name=".RestTimer"
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
new file mode 100644
index 0000000..6f6328e
--- a/dev/null
+++ b/res/values-de/strings.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="app_name">Pausen-Timer</string>
+ <string name="bothStartRest">Antippen/Kamera für Pause</string>
+ <string name="tapStartRest">Antippen für Pause</string>
+ <string name="cameraStartRest">Kamera für Pause</string>
+ <string name="restLeft">Verbleibende Zeit</string>
+ <string name="restLengthSeconds">Pausendauer (Sekunden)</string>
+
+ <string name="menu_settings">Einstellungen</string>
+
+ <string name="playSound">Benachrichtigungston</string>
+ <string name="vibrate">Vibration</string>
+ <string name="startTimerControl">Timer wie starten?</string>
+ <string-array name="startTimerControlArray">
+ <item>Bildschirm antippen</item>
+ <item>Kamerataste</item>
+ <item>Beide</item>
+ </string-array>
+ <string-array name="startTimerControlValueArray">
+ <item>tap</item>
+ <item>camera</item>
+ <item>both</item>
+ </string-array>
+ <string name="preventSleep">Standby-Modus deaktivieren</string>
+</resources> \ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 86c409c..a07a020 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -22,4 +22,5 @@
<item>camera</item>
<item>both</item>
</string-array>
+ <string name="preventSleep">Prevent Phone from Sleeping</string>
</resources>
diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml
index c8d9761..f291e17 100644
--- a/res/xml/preferences.xml
+++ b/res/xml/preferences.xml
@@ -4,4 +4,5 @@
<CheckBoxPreference android:title="@string/playSound" android:key="playSound" android:defaultValue="true"></CheckBoxPreference>
<CheckBoxPreference android:key="vibrate" android:title="@string/vibrate" android:defaultValue="true"></CheckBoxPreference>
<ListPreference android:title="@string/startTimerControl" android:entries="@array/startTimerControlArray" android:entryValues="@array/startTimerControlValueArray" android:defaultValue="both" android:key="startTimerControl"></ListPreference>
+<CheckBoxPreference android:key="preventSleep" android:defaultValue="false" android:title="@string/preventSleep"></CheckBoxPreference>
</PreferenceScreen>
diff --git a/src/net/laserbunny/resttimer/RestTimer.java b/src/net/laserbunny/resttimer/RestTimer.java
index 6dee739..d8b9d42 100644
--- a/src/net/laserbunny/resttimer/RestTimer.java
+++ b/src/net/laserbunny/resttimer/RestTimer.java
@@ -31,6 +31,7 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
+import android.os.PowerManager;
import android.os.Vibrator;
import android.preference.PreferenceManager;
import android.view.KeyEvent;
@@ -53,6 +54,8 @@ public class RestTimer extends Activity {
private ViewGroup countdownLayout;
private RestCountdown restCountdown;
+
+ private PowerManager.WakeLock wakeLock;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -106,9 +109,37 @@ public class RestTimer extends Activity {
protected void onResume() {
super.onResume();
+ if(settings.getBoolean("preventSleep", true)){
+ preventSleep();
+ } else {
+ if(wakeLock != null && wakeLock.isHeld()){
+ wakeLock.release();
+ }
+ }
+
updateTapToRestText();
}
+ @Override
+ protected void onPause() {
+ super.onPause();
+
+ if(wakeLock != null && wakeLock.isHeld()){
+ wakeLock.release();
+ }
+ }
+
+ private void preventSleep(){
+ if(wakeLock == null){
+ PowerManager powerManager = (PowerManager)getSystemService(POWER_SERVICE);
+ wakeLock = powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE, "RestTimer");
+ }
+
+ if(!wakeLock.isHeld()){
+ wakeLock.acquire();
+ }
+ }
+
public void updateTapToRestText(){
String startTimerControl = settings.getString("startTimerControl", "both");
@@ -193,7 +224,7 @@ public class RestTimer extends Activity {
if(vibrate) {
if(settings.getBoolean("vibrate", true)){
- long[] pattern = {0,100,300,100};
+ long[] pattern = {0,800,400,800};
vibrator.vibrate(pattern,-1);
}
@@ -225,7 +256,7 @@ public class RestTimer extends Activity {
secondsLeft = Integer.parseInt(restLengthSecondsEditText.getText().toString());
if(settings.getBoolean("vibrate", true)){
- vibrator.vibrate(100);
+ vibrator.vibrate(200);
}
updateText();