forked from upstream-mirrors/OpenTracks
For delays/timers: use Duration.
This commit is contained in:
@@ -31,7 +31,6 @@ import de.dennisguse.opentracks.services.TrackRecordingService;
|
|||||||
import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
|
import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
|
||||||
import de.dennisguse.opentracks.util.ActivityUtils;
|
import de.dennisguse.opentracks.util.ActivityUtils;
|
||||||
import de.dennisguse.opentracks.util.StringUtils;
|
import de.dennisguse.opentracks.util.StringUtils;
|
||||||
import de.dennisguse.opentracks.util.UnitConversions;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Track controller for record, pause, resume, and stop.
|
* Track controller for record, pause, resume, and stop.
|
||||||
@@ -42,6 +41,8 @@ public class TrackController implements View.OnTouchListener {
|
|||||||
|
|
||||||
private static final String TAG = TrackController.class.getSimpleName();
|
private static final String TAG = TrackController.class.getSimpleName();
|
||||||
|
|
||||||
|
private static final Duration UI_UPDATE_INTERVAL = Duration.ofSeconds(1);
|
||||||
|
|
||||||
private final Activity activity;
|
private final Activity activity;
|
||||||
private final TrackRecordingServiceConnection trackRecordingServiceConnection;
|
private final TrackRecordingServiceConnection trackRecordingServiceConnection;
|
||||||
private final Handler handlerUpdateTotalTime = new Handler();
|
private final Handler handlerUpdateTotalTime = new Handler();
|
||||||
@@ -66,7 +67,7 @@ public class TrackController implements View.OnTouchListener {
|
|||||||
if (isResumed && isRecording && !isRecordingPaused) {
|
if (isResumed && isRecording && !isRecordingPaused) {
|
||||||
updateTotalTime();
|
updateTotalTime();
|
||||||
setTotalTime();
|
setTotalTime();
|
||||||
handlerUpdateTotalTime.postDelayed(this, UnitConversions.ONE_SECOND_MS);
|
handlerUpdateTotalTime.postDelayed(this, UI_UPDATE_INTERVAL.toMillis());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -180,7 +181,7 @@ public class TrackController implements View.OnTouchListener {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (isRecording && !isRecordingPaused) {
|
if (isRecording && !isRecordingPaused) {
|
||||||
handlerUpdateTotalTime.postDelayed(updateTotalTimeRunnable, UnitConversions.ONE_SECOND_MS);
|
handlerUpdateTotalTime.postDelayed(updateTotalTimeRunnable, UI_UPDATE_INTERVAL.toMillis());
|
||||||
}
|
}
|
||||||
|
|
||||||
viewBinding.trackControllerRecord.setImageResource(isRecording && !isRecordingPaused ? R.drawable.ic_button_pause : R.drawable.button_record);
|
viewBinding.trackControllerRecord.setImageResource(isRecording && !isRecordingPaused ? R.drawable.ic_button_pause : R.drawable.button_record);
|
||||||
|
|||||||
@@ -34,6 +34,8 @@ import androidx.annotation.NonNull;
|
|||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.fragment.app.FragmentActivity;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
|
|
||||||
|
import java.time.Duration;
|
||||||
|
|
||||||
import de.dennisguse.opentracks.MarkerEditActivity;
|
import de.dennisguse.opentracks.MarkerEditActivity;
|
||||||
import de.dennisguse.opentracks.R;
|
import de.dennisguse.opentracks.R;
|
||||||
import de.dennisguse.opentracks.content.data.Marker;
|
import de.dennisguse.opentracks.content.data.Marker;
|
||||||
@@ -43,7 +45,6 @@ import de.dennisguse.opentracks.util.IntentUtils;
|
|||||||
import de.dennisguse.opentracks.util.ListItemUtils;
|
import de.dennisguse.opentracks.util.ListItemUtils;
|
||||||
import de.dennisguse.opentracks.util.MarkerUtils;
|
import de.dennisguse.opentracks.util.MarkerUtils;
|
||||||
import de.dennisguse.opentracks.util.StringUtils;
|
import de.dennisguse.opentracks.util.StringUtils;
|
||||||
import de.dennisguse.opentracks.util.UnitConversions;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A fragment to show marker details.
|
* A fragment to show marker details.
|
||||||
@@ -55,7 +56,7 @@ public class MarkerDetailFragment extends Fragment {
|
|||||||
private static final String TAG = MarkerDetailFragment.class.getSimpleName();
|
private static final String TAG = MarkerDetailFragment.class.getSimpleName();
|
||||||
private static final String KEY_MARKER_ID = "markerId";
|
private static final String KEY_MARKER_ID = "markerId";
|
||||||
|
|
||||||
private static final long HIDE_TEXT_DELAY = 4 * UnitConversions.ONE_SECOND_MS;
|
private static final Duration HIDE_TEXT_DELAY = Duration.ofSeconds(4);
|
||||||
|
|
||||||
private MenuItem shareMarkerImageMenuItem;
|
private MenuItem shareMarkerImageMenuItem;
|
||||||
|
|
||||||
@@ -126,7 +127,7 @@ public class MarkerDetailFragment extends Fragment {
|
|||||||
viewBinding.markerDetailMarkerTextGradient.setVisibility(visibility);
|
viewBinding.markerDetailMarkerTextGradient.setVisibility(visibility);
|
||||||
viewBinding.markerDetailMarkerInfo.setVisibility(visibility);
|
viewBinding.markerDetailMarkerInfo.setVisibility(visibility);
|
||||||
if (visibility == View.VISIBLE) {
|
if (visibility == View.VISIBLE) {
|
||||||
handler.postDelayed(hideText, HIDE_TEXT_DELAY);
|
handler.postDelayed(hideText, HIDE_TEXT_DELAY.toMillis());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return viewBinding.getRoot();
|
return viewBinding.getRoot();
|
||||||
@@ -236,7 +237,7 @@ public class MarkerDetailFragment extends Fragment {
|
|||||||
if (hasPhoto) {
|
if (hasPhoto) {
|
||||||
handler.removeCallbacks(hideText);
|
handler.removeCallbacks(hideText);
|
||||||
viewBinding.markerDetailMarkerPhoto.setImageURI(marker.getPhotoURI());
|
viewBinding.markerDetailMarkerPhoto.setImageURI(marker.getPhotoURI());
|
||||||
handler.postDelayed(hideText, HIDE_TEXT_DELAY);
|
handler.postDelayed(hideText, HIDE_TEXT_DELAY.toMillis());
|
||||||
} else {
|
} else {
|
||||||
viewBinding.markerDetailMarkerPhoto.setImageResource(MarkerUtils.ICON_ID);
|
viewBinding.markerDetailMarkerPhoto.setImageResource(MarkerUtils.ICON_ID);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
|
|||||||
import de.dennisguse.opentracks.util.PreferencesUtils;
|
import de.dennisguse.opentracks.util.PreferencesUtils;
|
||||||
import de.dennisguse.opentracks.util.StringUtils;
|
import de.dennisguse.opentracks.util.StringUtils;
|
||||||
import de.dennisguse.opentracks.util.TrackIconUtils;
|
import de.dennisguse.opentracks.util.TrackIconUtils;
|
||||||
import de.dennisguse.opentracks.util.UnitConversions;
|
|
||||||
import de.dennisguse.opentracks.viewmodels.SensorDataModel;
|
import de.dennisguse.opentracks.viewmodels.SensorDataModel;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,7 +49,7 @@ public class StatisticsRecordingFragment extends Fragment implements TrackDataLi
|
|||||||
|
|
||||||
private static final String TAG = StatisticsRecordingFragment.class.getSimpleName();
|
private static final String TAG = StatisticsRecordingFragment.class.getSimpleName();
|
||||||
|
|
||||||
private static final long UI_UPDATE_INTERVAL = UnitConversions.ONE_SECOND_MS;
|
private static final Duration UI_UPDATE_INTERVAL = Duration.ofSeconds(1);
|
||||||
|
|
||||||
public static Fragment newInstance() {
|
public static Fragment newInstance() {
|
||||||
return new StatisticsRecordingFragment();
|
return new StatisticsRecordingFragment();
|
||||||
@@ -121,7 +120,7 @@ public class StatisticsRecordingFragment extends Fragment implements TrackDataLi
|
|||||||
updateSensorDataUI();
|
updateSensorDataUI();
|
||||||
}
|
}
|
||||||
|
|
||||||
handlerUpdateUI.postDelayed(this, UI_UPDATE_INTERVAL);
|
handlerUpdateUI.postDelayed(this, UI_UPDATE_INTERVAL.toMillis());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -10,8 +10,9 @@ import android.util.Log;
|
|||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
|
||||||
|
import java.time.Duration;
|
||||||
|
|
||||||
import de.dennisguse.opentracks.util.PressureSensorUtils;
|
import de.dennisguse.opentracks.util.PressureSensorUtils;
|
||||||
import de.dennisguse.opentracks.util.UnitConversions;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Estimates the altitude gain and altitude loss using the device's pressure sensor (i.e., barometer).
|
* Estimates the altitude gain and altitude loss using the device's pressure sensor (i.e., barometer).
|
||||||
@@ -20,7 +21,7 @@ public class AltitudeSumManager implements SensorEventListener {
|
|||||||
|
|
||||||
private static final String TAG = AltitudeSumManager.class.getSimpleName();
|
private static final String TAG = AltitudeSumManager.class.getSimpleName();
|
||||||
|
|
||||||
private static final int SAMPLING_RATE = 3 * (int) UnitConversions.ONE_SECOND_US;
|
private static final Duration SAMPLING_RATE = Duration.ofSeconds(3);
|
||||||
|
|
||||||
private boolean isConnected = false;
|
private boolean isConnected = false;
|
||||||
|
|
||||||
@@ -39,7 +40,7 @@ public class AltitudeSumManager implements SensorEventListener {
|
|||||||
Log.w(TAG, "No pressure sensor available.");
|
Log.w(TAG, "No pressure sensor available.");
|
||||||
isConnected = false;
|
isConnected = false;
|
||||||
} else {
|
} else {
|
||||||
isConnected = sensorManager.registerListener(this, pressureSensor, SAMPLING_RATE);
|
isConnected = sensorManager.registerListener(this, pressureSensor, (int) SAMPLING_RATE.toNanos());
|
||||||
}
|
}
|
||||||
|
|
||||||
lastAcceptedPressureValue_hPa = Float.NaN;
|
lastAcceptedPressureValue_hPa = Float.NaN;
|
||||||
|
|||||||
Reference in New Issue
Block a user