From c955b3fe98d8ea157e7815b1c7155da4eb21fb87 Mon Sep 17 00:00:00 2001 From: Christopher Beckmann Date: Tue, 7 Aug 2018 14:00:08 +0200 Subject: [PATCH] Added missing german texts and added automatic timer updates, when the set time is bigger than the chosen time --- .../activities/TimerActivity.java | 17 ++++++++++++++--- .../activities/tutorial/FirstLaunchManager.java | 2 +- .../service/TimerService.java | 2 +- app/src/main/res/values-de/strings.xml | 4 ++++ app/src/main/res/values/strings.xml | 4 ++-- 5 files changed, 22 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/TimerActivity.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/TimerActivity.java index af6962b..ba56162 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/TimerActivity.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/TimerActivity.java @@ -11,6 +11,7 @@ import android.content.IntentFilter; import android.content.ServiceConnection; import android.content.SharedPreferences; import android.graphics.drawable.Drawable; +import android.os.Build; import android.os.IBinder; import android.preference.PreferenceManager; import android.support.v4.app.ActivityCompat; @@ -204,6 +205,7 @@ public class TimerActivity extends BaseActivity implements android.support.v4.ap Toast toast = Toast.makeText(TimerActivity.this, R.string.toast_not_enough_exercise_time, Toast.LENGTH_SHORT); toast.setGravity(toast.getGravity(), 0, 250); toast.show(); + saveCurrentSetBreakTime(); } } } @@ -322,10 +324,19 @@ public class TimerActivity extends BaseActivity implements android.support.v4.ap private void saveCurrentSetBreakTime() { SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this); - pref.edit() + + + SharedPreferences.Editor editor = pref.edit() .putInt(FirstLaunchManager.PREF_BREAK_PICKER_SECONDS, secondsBreakPicker.getValue()) - .putInt(FirstLaunchManager.PREF_BREAK_PICKER_MINUTES, minutesBreakPicker.getValue()) - .putLong(PAUSE_TIME, getCurrentSetBreakTime()).apply(); + .putInt(FirstLaunchManager.PREF_BREAK_PICKER_MINUTES, minutesBreakPicker.getValue()); + + ExerciseSet set = getCurrentSelectedExerciseSet(); + long seconds = set.getExerciseSetTime(this); + if(seconds * 1000 > getCurrentSetBreakTime()) { + editor.putLong(PAUSE_TIME, seconds * 1000).apply(); + } else { + editor.putLong(PAUSE_TIME, getCurrentSetBreakTime()).apply(); + } } private void saveCurrentSetDuration() { diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/tutorial/FirstLaunchManager.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/tutorial/FirstLaunchManager.java index 6b9a2d3..803f482 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/tutorial/FirstLaunchManager.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/tutorial/FirstLaunchManager.java @@ -74,7 +74,7 @@ public class FirstLaunchManager { .putLong(DEFAULT_EXERCISE_SET, 0L) .putLong(PAUSE_TIME, 5 * 60 * 1000) // 5 minutes .putBoolean(REPEAT_STATUS, false) - .putBoolean(REPEAT_EXERCISES, false) + .putBoolean(REPEAT_EXERCISES, true) .putBoolean(PREF_HIDE_DEFAULT_SETS, false) .putInt(PREF_BREAK_PICKER_SECONDS, 0) .putInt(PREF_BREAK_PICKER_MINUTES, 5) diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/service/TimerService.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/service/TimerService.java index cd42282..954cb98 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/service/TimerService.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/service/TimerService.java @@ -51,7 +51,7 @@ public class TimerService extends Service { public static final String ACTION_STOP_TIMER = TAG + "ACTION_STOP_TIMER"; public static final String ACTION_SNOOZE_TIMER = TAG + "ACTION_SNOOZE_TIMER"; - private static final int UPDATE_INTERVAL = 100; + private static final int UPDATE_INTERVAL = 125; public static final int NOTIFICATION_ID = 31337; private TimerServiceBinder mBinder = new TimerServiceBinder(); diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 6520b48..3504bd6 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -159,5 +159,9 @@ Übungen nicht wiederholen Zeit automatisch starten Zeit manuell starten + Übungszeit: %s + Die ausgewählte Übungszeit ist zu kurz, um das gewählte Übungsset abzuschließen. Die Übungszeit wird automatisch angepasst. Möchten Sie den Timer starten? + Achtung + Die gewählte Übungszeit ist nicht ausreichend, um das gewählte Übungsset abzuschließen. Die Zeit wurde automatisch angepasst. \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e196de7..849c8a7 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -153,9 +153,9 @@ start timers automatically start timers manually Execise Time:\n%s - The chosen exercise time is too short to finish the selected exercise set. Are you sure you want to start the timer? + The chosen exercise time is too short to finish the selected exercise set. The time will automatically be adjusted. Are you sure you want to start the timer? Warning - The currently selected exercise time is not sufficient to complete the chosen exercise set. + The currently selected exercise time is not sufficient to complete the chosen exercise set. The time has been adjusted.