diff --git a/drawable-svg/ic_arrow_long.svg b/drawable-svg/ic_arrow_long.svg
index 596ac0504..70be7632b 100644
--- a/drawable-svg/ic_arrow_long.svg
+++ b/drawable-svg/ic_arrow_long.svg
@@ -17,7 +17,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_button_pause.svg b/drawable-svg/ic_button_pause.svg
index f5cf587de..f50fa89b5 100644
--- a/drawable-svg/ic_button_pause.svg
+++ b/drawable-svg/ic_button_pause.svg
@@ -43,7 +43,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_button_pause_pressed.svg b/drawable-svg/ic_button_pause_pressed.svg
index ac1a7190b..2b77e7f7a 100644
--- a/drawable-svg/ic_button_pause_pressed.svg
+++ b/drawable-svg/ic_button_pause_pressed.svg
@@ -41,7 +41,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_button_record.svg b/drawable-svg/ic_button_record.svg
index b24a6b83c..d54337ce3 100644
--- a/drawable-svg/ic_button_record.svg
+++ b/drawable-svg/ic_button_record.svg
@@ -33,7 +33,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_button_stop.svg b/drawable-svg/ic_button_stop.svg
index d1ad9464e..5bd06c19c 100644
--- a/drawable-svg/ic_button_stop.svg
+++ b/drawable-svg/ic_button_stop.svg
@@ -39,7 +39,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_track_paused.svg b/drawable-svg/ic_track_paused.svg
index 95e8f49cf..10167b9e6 100644
--- a/drawable-svg/ic_track_paused.svg
+++ b/drawable-svg/ic_track_paused.svg
@@ -18,7 +18,7 @@
image/svg+xml
-
+
diff --git a/drawable-svg/ic_track_recording.svg b/drawable-svg/ic_track_recording.svg
index 44c88fb29..570e17c7f 100644
--- a/drawable-svg/ic_track_recording.svg
+++ b/drawable-svg/ic_track_recording.svg
@@ -21,7 +21,7 @@
image/svg+xml
-
+
diff --git a/src/main/java/de/dennisguse/opentracks/MarkerListActivity.java b/src/main/java/de/dennisguse/opentracks/MarkerListActivity.java
index a8dcef26e..ee0d6bd74 100644
--- a/src/main/java/de/dennisguse/opentracks/MarkerListActivity.java
+++ b/src/main/java/de/dennisguse/opentracks/MarkerListActivity.java
@@ -74,8 +74,7 @@ public class MarkerListActivity extends AbstractActivity implements DeleteMarker
* Note that sharedPreferenceChangeListener cannot be an anonymous inner
* class. Anonymous inner class will get garbage collected.
*/
- private final OnSharedPreferenceChangeListener
- sharedPreferenceChangeListener = new OnSharedPreferenceChangeListener() {
+ private final OnSharedPreferenceChangeListener sharedPreferenceChangeListener = new OnSharedPreferenceChangeListener() {
@Override
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
// Note that the key can be null
@@ -166,6 +165,7 @@ public class MarkerListActivity extends AbstractActivity implements DeleteMarker
String category = cursor.getString(categoryIndex);
String description = cursor.getString(descriptionIndex);
String photoUrl = cursor.getString(photoUrlIndex);
+ //TODO also show latitude and longitude in list
double latitude = cursor.getDouble(latitudeIndex);
double longitude = cursor.getDouble(longitudeIndex);
@@ -244,7 +244,7 @@ public class MarkerListActivity extends AbstractActivity implements DeleteMarker
}
@Override
- public boolean onOptionsItemSelected(MenuItem item) {
+ public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (track != null && item.getItemId() == R.id.marker_list_insert_marker) {
Intent intent = IntentUtils.newIntent(this, MarkerEditActivity.class)
.putExtra(MarkerEditActivity.EXTRA_TRACK_ID, track.getId());
diff --git a/src/main/java/de/dennisguse/opentracks/TrackDetailActivity.java b/src/main/java/de/dennisguse/opentracks/TrackDetailActivity.java
index ac3941f7a..e596e48e7 100644
--- a/src/main/java/de/dennisguse/opentracks/TrackDetailActivity.java
+++ b/src/main/java/de/dennisguse/opentracks/TrackDetailActivity.java
@@ -117,10 +117,8 @@ public class TrackDetailActivity extends AbstractListActivity implements ChooseA
});
}
};
- /*
- * Note that sharedPreferenceChangeListener cannot be an anonymous inner
- * class. Anonymous inner class will get garbage collected.
- */
+
+ // Note that sharedPreferenceChangeListener cannot be an anonymous inner class. Anonymous inner class will get garbage collected.
private final OnSharedPreferenceChangeListener sharedPreferenceChangeListener = new OnSharedPreferenceChangeListener() {
@Override
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
diff --git a/src/main/java/de/dennisguse/opentracks/chart/ChartValueSeries.java b/src/main/java/de/dennisguse/opentracks/chart/ChartValueSeries.java
index 7518afb1f..434acacf9 100644
--- a/src/main/java/de/dennisguse/opentracks/chart/ChartValueSeries.java
+++ b/src/main/java/de/dennisguse/opentracks/chart/ChartValueSeries.java
@@ -23,8 +23,6 @@ import android.graphics.Paint.Align;
import android.graphics.Paint.Style;
import android.graphics.Path;
-import androidx.annotation.VisibleForTesting;
-
import java.text.NumberFormat;
import de.dennisguse.opentracks.stats.ExtremityMonitor;
@@ -203,7 +201,6 @@ class ChartValueSeries {
/**
* Gets the interval value.
*/
- @VisibleForTesting
int getInterval() {
return interval;
}
@@ -218,7 +215,6 @@ class ChartValueSeries {
/**
* Gets the max marker value.
*/
- @VisibleForTesting
int getMaxMarkerValue() {
return maxMarkerValue;
}
diff --git a/src/main/java/de/dennisguse/opentracks/chart/ChartView.java b/src/main/java/de/dennisguse/opentracks/chart/ChartView.java
index df4d98342..87aea1e07 100644
--- a/src/main/java/de/dennisguse/opentracks/chart/ChartView.java
+++ b/src/main/java/de/dennisguse/opentracks/chart/ChartView.java
@@ -37,6 +37,7 @@ import androidx.core.view.GestureDetectorCompat;
import java.text.NumberFormat;
import java.util.ArrayList;
+import java.util.List;
import de.dennisguse.opentracks.MarkerDetailActivity;
import de.dennisguse.opentracks.R;
@@ -86,8 +87,8 @@ public class ChartView extends View {
}
private final ChartValueSeries[] series = new ChartValueSeries[NUM_SERIES];
- private final ArrayList chartData = new ArrayList<>();
- private final ArrayList waypoints = new ArrayList<>();
+ private final List chartData = new ArrayList<>();
+ private final List waypoints = new ArrayList<>();
private final ExtremityMonitor xExtremityMonitor = new ExtremityMonitor();
private final Paint axisPaint;
private final Paint xAxisMarkerPaint;
@@ -146,7 +147,7 @@ public class ChartView extends View {
@Override
public boolean onSingleTapConfirmed(MotionEvent event) {
// Check if the y event is within markerHeight of the marker center
- if (Math.abs(event.getY() - topBorder - spacer - markerHeight / 2) < markerHeight) {
+ if (Math.abs(event.getY() - topBorder - spacer - markerHeight / 2f) < markerHeight) {
int minDistance = Integer.MAX_VALUE;
Waypoint nearestWaypoint = null;
synchronized (waypoints) {
@@ -324,8 +325,7 @@ public class ChartView extends View {
public void addDataPoints(ArrayList dataPoints) {
synchronized (chartData) {
chartData.addAll(dataPoints);
- for (int i = 0; i < dataPoints.size(); i++) {
- double[] dataPoint = dataPoints.get(i);
+ for (double[] dataPoint : dataPoints) {
xExtremityMonitor.update(dataPoint[0]);
for (int j = 0; j < series.length; j++) {
if (!Double.isNaN(dataPoint[j + 1])) {
@@ -537,9 +537,9 @@ public class ChartView extends View {
*/
private void drawGrid(Canvas canvas) {
// X axis grid
- ArrayList xAxisMarkerPositions = getXAxisMarkerPositions(getXAxisInterval());
- for (int i = 0; i < xAxisMarkerPositions.size(); i++) {
- int x = getX(xAxisMarkerPositions.get(i));
+ List xAxisMarkerPositions = getXAxisMarkerPositions(getXAxisInterval());
+ for (double position : xAxisMarkerPositions) {
+ int x = getX(position);
canvas.drawLine(x, topBorder, x, topBorder + effectiveHeight, gridPaint);
}
// Y axis grid
@@ -611,7 +611,7 @@ public class ChartView extends View {
canvas.drawText(label, x + effectiveWidth + spacer, y + yOffset, axisPaint);
double interval = getXAxisInterval();
- ArrayList markerPositions = getXAxisMarkerPositions(interval);
+ List markerPositions = getXAxisMarkerPositions(interval);
NumberFormat numberFormat = interval < 1 ? X_FRACTION_FORMAT : X_NUMBER_FORMAT;
for (int i = 0; i < markerPositions.size(); i++) {
drawXAxisMarker(canvas, markerPositions.get(i), numberFormat, spacer + yOffset);
@@ -664,8 +664,8 @@ public class ChartView extends View {
/**
* Gets the x axis marker positions.
*/
- private ArrayList getXAxisMarkerPositions(double interval) {
- ArrayList markers = new ArrayList<>();
+ private List getXAxisMarkerPositions(double interval) {
+ List markers = new ArrayList<>();
markers.add(0d);
for (int i = 1; i * interval < maxX; i++) {
markers.add(i * interval);
@@ -775,8 +775,7 @@ public class ChartView extends View {
private void drawPaths() {
boolean[] hasMoved = new boolean[series.length];
- for (int i = 0; i < chartData.size(); i++) {
- double[] dataPoint = chartData.get(i);
+ for (double[] dataPoint : chartData) {
for (int j = 0; j < series.length; j++) {
double value = dataPoint[j + 1];
if (Double.isNaN(value)) {
diff --git a/src/main/java/de/dennisguse/opentracks/content/sensor/SensorDataSet.java b/src/main/java/de/dennisguse/opentracks/content/sensor/SensorDataSet.java
index ed999f445..971816de2 100644
--- a/src/main/java/de/dennisguse/opentracks/content/sensor/SensorDataSet.java
+++ b/src/main/java/de/dennisguse/opentracks/content/sensor/SensorDataSet.java
@@ -5,8 +5,8 @@ public final class SensorDataSet {
public static final float DATA_UNAVAILABLE = Float.NaN;
//TODO It might be necessary to consider: if sensor was connected as well.
- public String sensorName;
- public String sensorAddress;
+ private String sensorName;
+ private String sensorAddress;
private float heartRate;
private float cadence;
private float power;
diff --git a/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java b/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java
index c1bb4108d..37def4417 100644
--- a/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java
+++ b/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java
@@ -146,7 +146,7 @@ public enum TrackFileFormat {
}
public TrackExporter newTrackExporter(Context context, Track[] tracks, TrackExporterListener trackExporterListener) {
- return newKmzTrackExporter(context, this.newTrackWriter(context, tracks.length > 1), tracks, trackExporterListener, exportPhotos);
+ return newKmzTrackExporter(context, newTrackWriter(context, tracks.length > 1), tracks, trackExporterListener, exportPhotos);
}
public String getExtension() {
@@ -188,7 +188,7 @@ public enum TrackFileFormat {
public TrackExporter newTrackExporter(Context context, Track[] tracks, TrackExporterListener trackExporterListener) {
ContentProviderUtils contentProviderUtils = new ContentProviderUtils(context);
- TrackWriter trackWriter = this.newTrackWriter(context, tracks.length > 1);
+ TrackWriter trackWriter = newTrackWriter(context, tracks.length > 1);
return new FileTrackExporter(contentProviderUtils, trackWriter, tracks, trackExporterListener);
}
diff --git a/src/main/java/de/dennisguse/opentracks/services/TrackRecordingService.java b/src/main/java/de/dennisguse/opentracks/services/TrackRecordingService.java
index aed3a0b49..66161f798 100644
--- a/src/main/java/de/dennisguse/opentracks/services/TrackRecordingService.java
+++ b/src/main/java/de/dennisguse/opentracks/services/TrackRecordingService.java
@@ -536,8 +536,7 @@ public class TrackRecordingService extends Service {
}
/**
- * Common code for starting a new track, resuming a track, or restarting after
- * phone reboot.
+ * Common code for starting a new track, resuming a track, or restarting after phone reboot.
*
* @param trackStarted true if track is started, false if track is resumed
*/
@@ -597,7 +596,7 @@ public class TrackRecordingService extends Service {
contentProviderUtils.updateTrack(track);
}
}
- endRecording(true, trackId);
+ endRecording(true);
}
/**
@@ -625,7 +624,7 @@ public class TrackRecordingService extends Service {
insertLocation(track, pause, null);
}
- endRecording(false, recordingTrackId);
+ endRecording(false);
notificationManager.updateContent(getString(R.string.generic_paused));
}
@@ -634,9 +633,8 @@ public class TrackRecordingService extends Service {
* Common code for ending a track or pausing a track.
*
* @param trackStopped true if track is stopped, false if track is paused
- * @param trackId the track id
*/
- private void endRecording(boolean trackStopped, long trackId) {
+ private void endRecording(boolean trackStopped) {
// Shutdown periodic tasks
voiceExecutor.shutdown();
diff --git a/src/main/java/de/dennisguse/opentracks/settings/BluetoothLeAdapter.java b/src/main/java/de/dennisguse/opentracks/settings/BluetoothLeAdapter.java
index 069c15552..907373dcb 100644
--- a/src/main/java/de/dennisguse/opentracks/settings/BluetoothLeAdapter.java
+++ b/src/main/java/de/dennisguse/opentracks/settings/BluetoothLeAdapter.java
@@ -40,7 +40,7 @@ public class BluetoothLeAdapter extends BaseAdapter {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
//TODO Check if there is a better way to achieve identical look and feel to ListPreference.
//Use material design single choice; for old style use: android.R.layout.select_dialog_singlechoice
- currentView = inflater.inflate(androidx.appcompat.R.layout.select_dialog_singlechoice_material, null);
+ currentView = inflater.inflate(androidx.appcompat.R.layout.select_dialog_singlechoice_material, parent);
}
Device device = devices.get(position);
diff --git a/src/main/java/de/dennisguse/opentracks/util/PreferencesUtils.java b/src/main/java/de/dennisguse/opentracks/util/PreferencesUtils.java
index 6210ac9c3..982d492ca 100644
--- a/src/main/java/de/dennisguse/opentracks/util/PreferencesUtils.java
+++ b/src/main/java/de/dennisguse/opentracks/util/PreferencesUtils.java
@@ -86,7 +86,7 @@ public class PreferencesUtils {
* Compares if keyId and key belong to the same shared preference key.
*
* @param keyId The resource id of the key
- * @param key
+ * @param key The key of the preference
* @return true if key == null or key belongs to keyId
*/
public static boolean isKey(Context context, int keyId, String key) {
@@ -316,7 +316,6 @@ public class PreferencesUtils {
}
public static int getRecordingDistanceInterval(Context context) {
- final int RECORDING_DISTANCE_INTERVAL = Integer.parseInt(context.getResources().getString(R.string.recording_distance_interval_default));
return PreferencesUtils.getInt(context, R.string.recording_distance_interval_key, getRecordingDistanceIntervalDefault(context));
}
diff --git a/src/main/res/drawable-hdpi/ab_transparent_dark_holo.9.png b/src/main/res/drawable-hdpi/ab_transparent_dark_holo.9.png
deleted file mode 100644
index 24b742643..000000000
Binary files a/src/main/res/drawable-hdpi/ab_transparent_dark_holo.9.png and /dev/null differ
diff --git a/src/main/res/drawable-mdpi/ab_transparent_dark_holo.9.png b/src/main/res/drawable-mdpi/ab_transparent_dark_holo.9.png
deleted file mode 100644
index f1bd0f483..000000000
Binary files a/src/main/res/drawable-mdpi/ab_transparent_dark_holo.9.png and /dev/null differ
diff --git a/src/main/res/drawable-xhdpi/ab_transparent_dark_holo.9.png b/src/main/res/drawable-xhdpi/ab_transparent_dark_holo.9.png
deleted file mode 100644
index 1a52366f6..000000000
Binary files a/src/main/res/drawable-xhdpi/ab_transparent_dark_holo.9.png and /dev/null differ
diff --git a/src/main/res/layout/marker_detail_fragment.xml b/src/main/res/layout/marker_detail_fragment.xml
index 93107886d..3a8003ca0 100644
--- a/src/main/res/layout/marker_detail_fragment.xml
+++ b/src/main/res/layout/marker_detail_fragment.xml
@@ -17,55 +17,50 @@ limitations under the License.
android:layout_width="match_parent"
android:layout_height="match_parent">
+
+
-
+ android:layout_height="wrap_content">
+
+ android:src="@drawable/text_gradient" />
-
-
-
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="80dp"
+ android:orientation="vertical"
+ android:padding="8dp">
-
+
-
+
-
+
-
-
-
-
-
+
+
\ No newline at end of file
diff --git a/src/main/res/values/dimens.xml b/src/main/res/values/dimens.xml
deleted file mode 100644
index 76a81f661..000000000
--- a/src/main/res/values/dimens.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
- 0dp
-
\ No newline at end of file
diff --git a/src/main/res/values/settings_deprecated.xml b/src/main/res/values/settings_deprecated.xml
index b06987f1d..8b51602cb 100644
--- a/src/main/res/values/settings_deprecated.xml
+++ b/src/main/res/values/settings_deprecated.xml
@@ -1,23 +1,23 @@
-
+
- chartXAxis
- @string/chart_x_axis_distance
-
+ chartXAxis
+ @string/chart_x_axis_distance
+
- @string/chart_x_axis_distance
- @string/chart_x_axis_time
- TIME
- DISTANCE
-
+ TIME
+ DISTANCE
+
- @string/settings_chart_by_distance
- @string/settings_chart_by_time
- splitFrequency
- @string/frequency_off
+ splitFrequency
+ @string/frequency_off
voiceFrequency
@string/frequency_off
0