From 2cab394d03a9d5b7b0dde83c98cb1ac2708c2411 Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Sat, 6 Dec 2025 08:41:57 +0100 Subject: [PATCH] Cleanup. --- README.md | 3 +-- .../services/TrackRecordingServiceRecordingTest.java | 2 ++ .../java/de/dennisguse/opentracks/chart/ChartView.java | 8 ++++---- .../opentracks/io/file/importer/ParsingException.java | 6 +----- .../opentracks/settings/ActivityTypePreference.java | 3 ++- .../opentracks/settings/DefaultsSettingsFragment.java | 3 ++- .../settings/bluetooth/BluetoothLeSensorPreference.java | 3 ++- .../opentracks/ui/customRecordingLayout/DataField.java | 3 +++ .../java/de/dennisguse/opentracks/util/StringUtils.java | 2 +- 9 files changed, 18 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index e1999c3bc..8f8e0a272 100644 --- a/README.md +++ b/README.md @@ -112,8 +112,7 @@ The API is disabled by default to protect the user's privacy, but it can easily `Classes`: * **Start a recording:** `de.dennisguse.opentracks.publicapi.StartRecording` * Set track data: `TRACK_NAME`, `TRACK_DESCRIPTION`, `TRACK_CATEGORY`, and `TRACK_ICON` ( - non-localized identifier - see [/src/main/java/de/dennisguse/opentracks/util/TrackIconUtils.java#L38](/src/main/java/de/dennisguse/opentracks/util/TrackIconUtils.java#L38)). + see `ActivityType.id` defined in [/src/main/java/de/dennisguse/opentracks/util/TrackIconUtils.java#L38](/src/main/java/de/dennisguse/opentracks/data/model/ActivityType.java)). NOTE: if `TRACK_ICON` is not present, `TRACK_CATEGORY` will be used to determine the icon ( localized). * Send recorded data to another application via _Dashboard API_: `STATS_TARGET_PACKAGE` and diff --git a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceRecordingTest.java b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceRecordingTest.java index b209ea52c..7abfcecf3 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceRecordingTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceRecordingTest.java @@ -9,6 +9,7 @@ import android.location.Location; import android.location.LocationManager; import android.os.Looper; +import androidx.annotation.NonNull; import androidx.core.location.LocationManagerCompat; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; @@ -738,6 +739,7 @@ public class TrackRecordingServiceRecordingTest { return true; } + @NonNull @Override public AltitudeGainLoss getAggregatedValue(Instant now) { return new AltitudeGainLoss(altitudeGain, altitudeGain); diff --git a/src/main/java/de/dennisguse/opentracks/chart/ChartView.java b/src/main/java/de/dennisguse/opentracks/chart/ChartView.java index 4f20b7bb5..c4c095a44 100644 --- a/src/main/java/de/dennisguse/opentracks/chart/ChartView.java +++ b/src/main/java/de/dennisguse/opentracks/chart/ChartView.java @@ -118,7 +118,7 @@ public class ChartView extends View { private final GestureDetectorCompat detectorScrollFlingTab = new GestureDetectorCompat(getContext(), new GestureDetector.SimpleOnGestureListener() { @Override - public boolean onDown(MotionEvent e) { + public boolean onDown(@NonNull MotionEvent e) { if (!scroller.isFinished()) { scroller.abortAnimation(); } @@ -126,7 +126,7 @@ public class ChartView extends View { } @Override - public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { + public boolean onScroll(MotionEvent e1, @NonNull MotionEvent e2, float distanceX, float distanceY) { if (Math.abs(distanceX) > 0) { int availableToScroll = effectiveWidth * (zoomLevel - 1) - getScrollX(); if (availableToScroll > 0) { @@ -137,7 +137,7 @@ public class ChartView extends View { } @Override - public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { + public boolean onFling(MotionEvent e1, @NonNull MotionEvent e2, float velocityX, float velocityY) { fling((int) -velocityX); return true; } @@ -147,7 +147,7 @@ public class ChartView extends View { private final ScaleGestureDetector detectorZoom = new ScaleGestureDetector(getContext(), new ScaleGestureDetector.SimpleOnScaleGestureListener() { @Override - public boolean onScale(ScaleGestureDetector detector) { + public boolean onScale(@NonNull ScaleGestureDetector detector) { float scaleFactor = detector.getScaleFactor(); if (scaleFactor >= 1.1f) { zoomIn(); diff --git a/src/main/java/de/dennisguse/opentracks/io/file/importer/ParsingException.java b/src/main/java/de/dennisguse/opentracks/io/file/importer/ParsingException.java index 59de5b072..ce2127e28 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/importer/ParsingException.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/importer/ParsingException.java @@ -4,10 +4,6 @@ import androidx.annotation.NonNull; public class ParsingException extends RuntimeException { - protected ParsingException(@NonNull String message) { - super(message); - } - protected ParsingException(@NonNull String message, Exception cause) { super(message, cause); } @@ -15,6 +11,6 @@ public class ParsingException extends RuntimeException { @NonNull @Override public String toString() { - return "" + getMessage(); + return getMessage(); } } diff --git a/src/main/java/de/dennisguse/opentracks/settings/ActivityTypePreference.java b/src/main/java/de/dennisguse/opentracks/settings/ActivityTypePreference.java index 24f038336..86f84eaac 100644 --- a/src/main/java/de/dennisguse/opentracks/settings/ActivityTypePreference.java +++ b/src/main/java/de/dennisguse/opentracks/settings/ActivityTypePreference.java @@ -24,6 +24,7 @@ import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.ImageView; +import androidx.annotation.NonNull; import androidx.preference.DialogPreference; import androidx.preference.PreferenceDialogFragmentCompat; @@ -71,7 +72,7 @@ public class ActivityTypePreference extends DialogPreference { } @Override - protected void onBindDialogView(View view) { + protected void onBindDialogView(@NonNull View view) { super.onBindDialogView(view); final Context context = getActivity(); diff --git a/src/main/java/de/dennisguse/opentracks/settings/DefaultsSettingsFragment.java b/src/main/java/de/dennisguse/opentracks/settings/DefaultsSettingsFragment.java index e2f192cc4..f4b72c771 100644 --- a/src/main/java/de/dennisguse/opentracks/settings/DefaultsSettingsFragment.java +++ b/src/main/java/de/dennisguse/opentracks/settings/DefaultsSettingsFragment.java @@ -3,6 +3,7 @@ package de.dennisguse.opentracks.settings; import android.content.SharedPreferences; import android.os.Bundle; +import androidx.annotation.NonNull; import androidx.fragment.app.DialogFragment; import androidx.preference.ListPreference; import androidx.preference.Preference; @@ -48,7 +49,7 @@ public class DefaultsSettingsFragment extends PreferenceFragmentCompat implement } @Override - public void onDisplayPreferenceDialog(Preference preference) { + public void onDisplayPreferenceDialog(@NonNull Preference preference) { DialogFragment dialogFragment = null; if (preference instanceof ActivityTypePreference) { activityPreferenceDialog = ActivityTypePreference.ActivityPreferenceDialog.newInstance(preference.getKey()); diff --git a/src/main/java/de/dennisguse/opentracks/settings/bluetooth/BluetoothLeSensorPreference.java b/src/main/java/de/dennisguse/opentracks/settings/bluetooth/BluetoothLeSensorPreference.java index 8a5b7b5ee..531fb6f0d 100644 --- a/src/main/java/de/dennisguse/opentracks/settings/bluetooth/BluetoothLeSensorPreference.java +++ b/src/main/java/de/dennisguse/opentracks/settings/bluetooth/BluetoothLeSensorPreference.java @@ -17,6 +17,7 @@ import android.util.AttributeSet; import android.util.Log; import android.widget.Toast; +import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; import androidx.preference.DialogPreference; import androidx.preference.PreferenceDialogFragmentCompat; @@ -234,7 +235,7 @@ public abstract class BluetoothLeSensorPreference extends DialogPreference { //Behave like ListPreferenceDialogFragmentCompat, but uses a custom listAdapter. @Override - protected void onPrepareDialogBuilder(AlertDialog.Builder builder) { + protected void onPrepareDialogBuilder(@NonNull AlertDialog.Builder builder) { super.onPrepareDialogBuilder(builder); builder.setSingleChoiceItems(listAdapter, selectedEntryIndex, diff --git a/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/DataField.java b/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/DataField.java index d3c94fb05..d53cbba33 100644 --- a/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/DataField.java +++ b/src/main/java/de/dennisguse/opentracks/ui/customRecordingLayout/DataField.java @@ -3,6 +3,8 @@ package de.dennisguse.opentracks.ui.customRecordingLayout; import android.os.Parcel; import android.os.Parcelable; +import androidx.annotation.NonNull; + import java.util.Objects; public class DataField implements Parcelable { @@ -88,6 +90,7 @@ public class DataField implements Parcelable { return Objects.hash(key, isVisible, isPrimary, isWide); } + @NonNull @Override public String toString() { return "DataField{" + diff --git a/src/main/java/de/dennisguse/opentracks/util/StringUtils.java b/src/main/java/de/dennisguse/opentracks/util/StringUtils.java index 0cccb30b5..7ae019d80 100644 --- a/src/main/java/de/dennisguse/opentracks/util/StringUtils.java +++ b/src/main/java/de/dennisguse/opentracks/util/StringUtils.java @@ -216,7 +216,7 @@ public class StringUtils { .setUnit(unitSystem) .build(context); - Distance distance = altitude_m != null ? Distance.of(altitude_m) : Distance.of((Double) null); + Distance distance = altitude_m != null ? Distance.of(altitude_m) : Distance.of(null); return formatter.getDistanceParts(distance); }