Code cleanup.

This commit is contained in:
Dennis Guse
2019-07-18 20:31:24 +02:00
parent b480623884
commit ef7db315d3
4 changed files with 40 additions and 43 deletions
@@ -123,7 +123,7 @@ public class TrackDetailActivity extends AbstractTrackActivity
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {
@Override @Override
public void run() { public void run() {
trackController.update(trackId == recordingTrackId, recordingTrackPaused); trackController.update(isRecording(), recordingTrackPaused);
if (hasPhoto && photoUri != null) { if (hasPhoto && photoUri != null) {
hasPhoto = false; hasPhoto = false;
WaypointCreationRequest waypointCreationRequest = new WaypointCreationRequest(WaypointType.WAYPOINT, false, null, null, null, null, photoUri.toString()); WaypointCreationRequest waypointCreationRequest = new WaypointCreationRequest(WaypointType.WAYPOINT, false, null, null, null, null, photoUri.toString());
@@ -159,7 +159,7 @@ public class TrackDetailActivity extends AbstractTrackActivity
@Override @Override
public void run() { public void run() {
TrackDetailActivity.this.invalidateOptionsMenu(); TrackDetailActivity.this.invalidateOptionsMenu();
boolean isRecording = trackId == recordingTrackId; boolean isRecording = isRecording();
trackController.update(isRecording, recordingTrackPaused); trackController.update(isRecording, recordingTrackPaused);
} }
}); });
@@ -171,12 +171,12 @@ public class TrackDetailActivity extends AbstractTrackActivity
public void onClick(View v) { public void onClick(View v) {
if (recordingTrackPaused) { if (recordingTrackPaused) {
// Paused -> Resume // Paused -> Resume
updateMenuItems(true, false); updateMenuItems(false);
TrackRecordingServiceConnectionUtils.resumeTrack(trackRecordingServiceConnection); TrackRecordingServiceConnectionUtils.resumeTrack(trackRecordingServiceConnection);
trackController.update(true, false); trackController.update(true, false);
} else { } else {
// Recording -> Paused // Recording -> Paused
updateMenuItems(true, true); updateMenuItems(true);
TrackRecordingServiceConnectionUtils.pauseTrack(trackRecordingServiceConnection); TrackRecordingServiceConnectionUtils.pauseTrack(trackRecordingServiceConnection);
trackController.update(true, true); trackController.update(true, true);
} }
@@ -186,8 +186,8 @@ public class TrackDetailActivity extends AbstractTrackActivity
private final OnClickListener stopListener = new OnClickListener() { private final OnClickListener stopListener = new OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
updateMenuItems(false, true);
TrackRecordingServiceConnectionUtils.stopRecording(TrackDetailActivity.this, trackRecordingServiceConnection, true); TrackRecordingServiceConnectionUtils.stopRecording(TrackDetailActivity.this, trackRecordingServiceConnection, true);
updateMenuItems(true);
} }
}; };
@@ -195,8 +195,7 @@ public class TrackDetailActivity extends AbstractTrackActivity
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
hasCamera = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA); hasCamera = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
photoUri = savedInstanceState != null ? (Uri) savedInstanceState.getParcelable(PHOTO_URI_KEY) photoUri = savedInstanceState != null ? (Uri) savedInstanceState.getParcelable(PHOTO_URI_KEY) : null;
: null;
hasPhoto = savedInstanceState != null && savedInstanceState.getBoolean(HAS_PHOTO_KEY, false); hasPhoto = savedInstanceState != null && savedInstanceState.getBoolean(HAS_PHOTO_KEY, false);
myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this); myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this);
@@ -249,8 +248,7 @@ public class TrackDetailActivity extends AbstractTrackActivity
// Update UI // Update UI
this.invalidateOptionsMenu(); this.invalidateOptionsMenu();
boolean isRecording = trackId == recordingTrackId; trackController.onResume(isRecording(), recordingTrackPaused);
trackController.onResume(isRecording, recordingTrackPaused);
} }
@Override @Override
@@ -343,7 +341,7 @@ public class TrackDetailActivity extends AbstractTrackActivity
@Override @Override
public boolean onPrepareOptionsMenu(Menu menu) { public boolean onPrepareOptionsMenu(Menu menu) {
updateMenuItems(trackId == recordingTrackId, recordingTrackPaused); updateMenuItems(recordingTrackPaused);
return super.onPrepareOptionsMenu(menu); return super.onPrepareOptionsMenu(menu);
} }
@@ -492,31 +490,29 @@ public class TrackDetailActivity extends AbstractTrackActivity
/** /**
* Updates the menu items. * Updates the menu items.
*
* @param isRecording true if recording
*/ */
private void updateMenuItems(boolean isRecording, boolean isPaused) { private void updateMenuItems(boolean isPaused) {
if (insertMarkerMenuItem != null) { if (insertMarkerMenuItem != null) {
insertMarkerMenuItem.setVisible(isRecording && !isPaused); insertMarkerMenuItem.setVisible(isRecording() && !isPaused);
} }
if (insertPhotoMenuItem != null) { if (insertPhotoMenuItem != null) {
insertPhotoMenuItem.setVisible(hasCamera && isRecording && !isPaused); insertPhotoMenuItem.setVisible(hasCamera && isRecording() && !isPaused);
} }
if (shareMenuItem != null && shareMenuItem.isEnabled()) { if (shareMenuItem != null && shareMenuItem.isEnabled()) {
shareMenuItem.setVisible(!isRecording); shareMenuItem.setVisible(!isRecording());
} }
if (voiceFrequencyMenuItem != null) { if (voiceFrequencyMenuItem != null) {
voiceFrequencyMenuItem.setVisible(isRecording); voiceFrequencyMenuItem.setVisible(isRecording());
} }
if (splitFrequencyMenuItem != null) { if (splitFrequencyMenuItem != null) {
splitFrequencyMenuItem.setVisible(isRecording); splitFrequencyMenuItem.setVisible(isRecording());
} }
if (sensorStateMenuItem != null) { if (sensorStateMenuItem != null) {
sensorStateMenuItem.setVisible(isRecording); sensorStateMenuItem.setVisible(isRecording());
} }
String title; String title;
if (isRecording) { if (isRecording()) {
title = getString(isPaused ? R.string.generic_paused : R.string.generic_recording); title = getString(isPaused ? R.string.generic_paused : R.string.generic_recording);
} else { } else {
Track track = myTracksProviderUtils.getTrack(trackId); Track track = myTracksProviderUtils.getTrack(trackId);
@@ -536,4 +532,8 @@ public class TrackDetailActivity extends AbstractTrackActivity
String category = getString(TrackIconUtils.getIconActivityType(iconValue)); String category = getString(TrackIconUtils.getIconActivityType(iconValue));
TrackUtils.updateTrack(this, track, null, category, null, myTracksProviderUtils); TrackUtils.updateTrack(this, track, null, category, null, myTracksProviderUtils);
} }
private boolean isRecording() {
return trackId == recordingTrackId;
}
} }
@@ -327,8 +327,7 @@ public class TrackListActivity extends AbstractTrackActivity implements FileType
int iconId = TrackIconUtils.getIconDrawable(icon); int iconId = TrackIconUtils.getIconDrawable(icon);
String name = cursor.getString(nameIndex); String name = cursor.getString(nameIndex);
String totalTime = StringUtils.formatElapsedTime(cursor.getLong(totalTimeIndex)); String totalTime = StringUtils.formatElapsedTime(cursor.getLong(totalTimeIndex));
String totalDistance = StringUtils.formatDistance( String totalDistance = StringUtils.formatDistance(TrackListActivity.this, cursor.getDouble(totalDistanceIndex), metricUnits);
TrackListActivity.this, cursor.getDouble(totalDistanceIndex), metricUnits);
int markerCount = myTracksProviderUtils.getWaypointCount(trackId); int markerCount = myTracksProviderUtils.getWaypointCount(trackId);
long startTime = cursor.getLong(startTimeIndex); long startTime = cursor.getLong(startTimeIndex);
String category = icon != null && !icon.equals("") ? null : cursor.getString(categoryIndex); String category = icon != null && !icon.equals("") ? null : cursor.getString(categoryIndex);
@@ -94,20 +94,20 @@ public class ListItemUtils {
setTextView(activity, nameTextView, name, hasPhoto); setTextView(activity, nameTextView, name, hasPhoto);
// Set totalTime/totalDistance // Set totalTime/totalDistance
TextView ownerTimeDistanceTextView = view.findViewById(R.id.list_item_owner_time_distance); TextView timeDistanceTextView = view.findViewById(R.id.list_item_time_distance);
String ownerTimeDistance; String timeDistanceText;
if (isRecording) { if (isRecording) {
ownerTimeDistanceTextView.setTextColor(activity.getResources().getColor(isPaused ? android.R.color.white : R.color.recording_text)); timeDistanceTextView.setTextColor(activity.getResources().getColor(isPaused ? android.R.color.white : R.color.recording_text));
ownerTimeDistance = activity.getString(isPaused ? R.string.generic_paused : R.string.generic_recording); timeDistanceText = activity.getString(isPaused ? R.string.generic_paused : R.string.generic_recording);
} else { } else {
// Match list_item_owner_time_distance in list_item.xml // Match list_item_time_distance in list_item.xml
ownerTimeDistanceTextView.setTextAppearance(activity, R.style.TextSmall); timeDistanceTextView.setTextAppearance(activity, R.style.TextSmall);
ownerTimeDistance = getTimeDistance(totalTime, totalDistance); timeDistanceText = getTimeDistance(totalTime, totalDistance);
if (markerCount > 0) { if (markerCount > 0) {
ownerTimeDistance += " \u2027"; timeDistanceText += " \u2027";
} }
} }
setTextView(activity, ownerTimeDistanceTextView, ownerTimeDistance, hasPhoto); setTextView(activity, timeDistanceTextView, timeDistanceText, hasPhoto);
// Set markerCount // Set markerCount
ImageView markerCountIcon = view.findViewById(R.id.list_item_marker_count_icon); ImageView markerCountIcon = view.findViewById(R.id.list_item_marker_count_icon);
@@ -142,22 +142,22 @@ public class ListItemUtils {
* Place categoryDescription in either ownerTimeDistanceTextView or * Place categoryDescription in either ownerTimeDistanceTextView or
* categoryDescriptionTextView * categoryDescriptionTextView
*/ */
if (ownerTimeDistanceTextView.getVisibility() == View.GONE if (timeDistanceTextView.getVisibility() == View.GONE
&& markerCountIcon.getVisibility() == View.GONE) { && markerCountIcon.getVisibility() == View.GONE) {
setTextView(activity, categoryDescriptionTextView, null, hasPhoto); setTextView(activity, categoryDescriptionTextView, null, hasPhoto);
// Match list_item_category_description in list_item.xml // Match list_item_category_description in list_item.xml
ownerTimeDistanceTextView.setSingleLine(false); timeDistanceTextView.setSingleLine(false);
ownerTimeDistanceTextView.setMaxLines(2); timeDistanceTextView.setMaxLines(2);
setTextView(activity, ownerTimeDistanceTextView, categoryDescription, hasPhoto); setTextView(activity, timeDistanceTextView, categoryDescription, hasPhoto);
} else { } else {
// Match list_item_owner_time_distance in list_item.xml // Match list_item_time_distance in list_item.xml
ownerTimeDistanceTextView.setSingleLine(true); timeDistanceTextView.setSingleLine(true);
setTextView(activity, categoryDescriptionTextView, categoryDescription, hasPhoto); setTextView(activity, categoryDescriptionTextView, categoryDescription, hasPhoto);
} }
// Adjust iconImageView layout gravity // Adjust iconImageView layout gravity
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) iconImageView.getLayoutParams(); LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) iconImageView.getLayoutParams();
params.gravity = ownerTimeDistanceTextView.getVisibility() == View.GONE params.gravity = timeDistanceTextView.getVisibility() == View.GONE
&& markerCountIcon.getVisibility() == View.GONE ? Gravity.TOP : Gravity.CENTER_VERTICAL; && markerCountIcon.getVisibility() == View.GONE ? Gravity.TOP : Gravity.CENTER_VERTICAL;
} }
@@ -191,8 +191,7 @@ public class ListItemUtils {
* @param context the context * @param context the context
* @param time the start time * @param time the start time
*/ */
private static String[] getDateTime( private static String[] getDateTime(boolean isRecording, Context context, long time, boolean useRelativeTime) {
boolean isRecording, Context context, long time, boolean useRelativeTime) {
if (isRecording || time == 0L) { if (isRecording || time == 0L) {
return new String[] { null, null }; return new String[] { null, null };
} }
@@ -222,8 +221,7 @@ public class ListItemUtils {
* @param value the value for the text view * @param value the value for the text view
* @param addShadow true to add shadow * @param addShadow true to add shadow
*/ */
public static void setTextView( public static void setTextView(Context context, TextView textView, String value, boolean addShadow) {
Context context, TextView textView, String value, boolean addShadow) {
if (value == null || value.length() == 0) { if (value == null || value.length() == 0) {
textView.setVisibility(View.GONE); textView.setVisibility(View.GONE);
} else { } else {
+1 -1
View File
@@ -86,7 +86,7 @@ limitations under the License.
android:layout_width="match_parent" > android:layout_width="match_parent" >
<TextView <TextView
android:ellipsize="end" android:ellipsize="end"
android:id="@+id/list_item_owner_time_distance" android:id="@+id/list_item_time_distance"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:singleLine="true" android:singleLine="true"
style="@style/TextSmall" /> style="@style/TextSmall" />