From dc3e7d25f33793dc99bf561910ece429f36e1fc6 Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Tue, 18 Feb 2025 21:37:34 +0100 Subject: [PATCH] Preference: "GPS disabled"-warning is now configurable. Fixes #2058. --- .../de/dennisguse/opentracks/TrackRecordingActivity.java | 4 ++++ .../de/dennisguse/opentracks/settings/PreferencesUtils.java | 5 +++++ src/main/res/values/settings.xml | 3 +++ src/main/res/values/strings.xml | 2 ++ src/main/res/xml/settings_user_interface.xml | 6 ++++++ 5 files changed, 20 insertions(+) diff --git a/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java b/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java index b2310fb11..35e6bbe69 100644 --- a/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java +++ b/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java @@ -390,6 +390,10 @@ public class TrackRecordingActivity extends AbstractActivity implements ChooseAc return; } + if (!PreferencesUtils.shouldShowGpsDisabledWarning()) { + return; + } + snackbar = Snackbar .make(viewBinding.trackRecordingCoordinatorLayout, getString(R.string.gps_recording_status, getString(gpsStatusValue.message), getString(R.string.gps_recording_without_signal)), diff --git a/src/main/java/de/dennisguse/opentracks/settings/PreferencesUtils.java b/src/main/java/de/dennisguse/opentracks/settings/PreferencesUtils.java index af3f002c2..7777d2fdb 100644 --- a/src/main/java/de/dennisguse/opentracks/settings/PreferencesUtils.java +++ b/src/main/java/de/dennisguse/opentracks/settings/PreferencesUtils.java @@ -318,6 +318,11 @@ public class PreferencesUtils { return getBoolean(R.string.stats_fullscreen_while_recording_key, DEFAULT); } + public static boolean shouldShowGpsDisabledWarning() { + final boolean DEFAULT = resources.getBoolean(R.bool.stats_show_gps_disabled_warnings_default); + return getBoolean(R.string.stats_show_gps_disabled_warnings_key, DEFAULT); + } + public static boolean shouldShowElevation() { final boolean DEFAULT = resources.getBoolean(R.bool.chart_display_elevation_default); return getBoolean(R.string.chart_display_elevation_key, DEFAULT); diff --git a/src/main/res/values/settings.xml b/src/main/res/values/settings.xml index db5faac93..1bdd2cd62 100644 --- a/src/main/res/values/settings.xml +++ b/src/main/res/values/settings.xml @@ -286,6 +286,9 @@ trackdetail_fullscreen_while_recording false + trackdetail_show_gps_disabled_warnings + true + chart_display_elevation true diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index baf41380f..351b3f1c3 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -362,6 +362,8 @@ limitations under the License. While recording, keep the screen on. Fullscreen While recording, present in fullscreen. + GPS disabled warning + While recording, show a warning if GPS is disabled. Default activity type %1$s between location checks A new segment is created if the distance between two locations is greater than %1$s diff --git a/src/main/res/xml/settings_user_interface.xml b/src/main/res/xml/settings_user_interface.xml index 9596502f6..a037f0c0e 100644 --- a/src/main/res/xml/settings_user_interface.xml +++ b/src/main/res/xml/settings_user_interface.xml @@ -56,6 +56,12 @@ android:key="@string/stats_fullscreen_while_recording_key" android:summary="@string/settings_recording_fullscreen_on_while_recording_summary" android:title="@string/settings_recording_fullscreen_on_while_recording_title" /> + +