| -rw-r--r-- | AndroidManifest.xml | 5 | ||||
| -rw-r--r-- | res/values-de/strings.xml | 26 | ||||
| -rw-r--r-- | res/values/strings.xml | 1 | ||||
| -rw-r--r-- | res/xml/preferences.xml | 1 | ||||
| -rw-r--r-- | src/net/laserbunny/resttimer/RestTimer.java | 35 |
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(); |
