diff --git a/src/main/java/de/dennisguse/opentracks/data/models/TrackPoint.java b/src/main/java/de/dennisguse/opentracks/data/models/TrackPoint.java index c3b2bf150..05858b1dc 100644 --- a/src/main/java/de/dennisguse/opentracks/data/models/TrackPoint.java +++ b/src/main/java/de/dennisguse/opentracks/data/models/TrackPoint.java @@ -21,7 +21,6 @@ import android.os.Parcelable; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.annotation.VisibleForTesting; import java.time.Instant; import java.util.Optional; @@ -93,7 +92,6 @@ public class TrackPoint { this.position = position; } - //TODO Refactor constructors public TrackPoint(@NonNull Type type, @NonNull Instant time) { this(null, type, Position.of(time)); } @@ -218,13 +216,6 @@ public class TrackPoint { return position.altitude(); } - @Deprecated - @VisibleForTesting - public TrackPoint setAltitude(double altitude_m) { - setAltitude(Altitude.WGS84.of(altitude_m)); - return this; - } - @Deprecated public TrackPoint setAltitude(Altitude altitude) { position = position.with(altitude); diff --git a/src/main/java/de/dennisguse/opentracks/sensors/sensorData/AggregatorGPS.java b/src/main/java/de/dennisguse/opentracks/sensors/sensorData/AggregatorGPS.java index 5f735b851..1b3b05428 100644 --- a/src/main/java/de/dennisguse/opentracks/sensors/sensorData/AggregatorGPS.java +++ b/src/main/java/de/dennisguse/opentracks/sensors/sensorData/AggregatorGPS.java @@ -29,7 +29,6 @@ public class AggregatorGPS extends Aggregator { * TODO: this behavior can be changed if TrackRecordingManager.insertTrackPoint() would strip GPS data if it was already saved. This would simplify TrackPointCreator.createCurrentTrackPoint() */ aggregatedValue = Position.empty(); - } @NonNull diff --git a/src/main/java/de/dennisguse/opentracks/services/handlers/TrackPointCreator.java b/src/main/java/de/dennisguse/opentracks/services/handlers/TrackPointCreator.java index c1f04504b..74b839a16 100644 --- a/src/main/java/de/dennisguse/opentracks/services/handlers/TrackPointCreator.java +++ b/src/main/java/de/dennisguse/opentracks/services/handlers/TrackPointCreator.java @@ -107,7 +107,9 @@ public class TrackPointCreator implements SharedPreferences.OnSharedPreferenceCh public Pair createCurrentTrackPoint(@Nullable TrackPoint lastTrackPointUISpeed, @Nullable TrackPoint lastTrackPointUIAltitude, @Nullable TrackPoint lastStoredTrackPointWithLocation) { TrackPoint currentTrackPoint = new TrackPoint(TrackPoint.Type.TRACKPOINT, createNow()); - if (lastStoredTrackPointWithLocation != null && lastStoredTrackPointWithLocation.hasLocation()) { + SensorDataSet sensorDataSet = addSensorData(currentTrackPoint); + + if (!currentTrackPoint.hasLocation() && lastStoredTrackPointWithLocation != null && lastStoredTrackPointWithLocation.hasLocation()) { //We are taking the coordinates from the last stored TrackPoint, so the distance is monotonously increasing. currentTrackPoint.setPosition(lastStoredTrackPointWithLocation.getPosition()); } @@ -120,8 +122,6 @@ public class TrackPointCreator implements SharedPreferences.OnSharedPreferenceCh currentTrackPoint.setAltitude(lastTrackPointUIAltitude.getAltitude()); } - SensorDataSet sensorDataSet = addSensorData(currentTrackPoint); - return new Pair<>(currentTrackPoint, sensorDataSet); }