diff --git a/src/main/java/de/dennisguse/opentracks/MarkerEditActivity.java b/src/main/java/de/dennisguse/opentracks/MarkerEditActivity.java index 0a4426f3f..b2698102a 100644 --- a/src/main/java/de/dennisguse/opentracks/MarkerEditActivity.java +++ b/src/main/java/de/dennisguse/opentracks/MarkerEditActivity.java @@ -227,16 +227,17 @@ public class MarkerEditActivity extends AbstractActivity { @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.marker_edit_insert_photo: - createMarkerWithPicture(); - return true; - case R.id.marker_edit_insert_gallery_img: - createMarkerWithGalleryImage(); - return true; - default: - return super.onOptionsItemSelected(item); + if (item.getItemId() == R.id.marker_edit_insert_photo) { + createMarkerWithPicture(); + return true; } + + if (item.getItemId() == R.id.marker_edit_insert_gallery_img) { + createMarkerWithGalleryImage(); + return true; + } + + return super.onOptionsItemSelected(item); } @Override @@ -252,7 +253,7 @@ public class MarkerEditActivity extends AbstractActivity { if (resultCode == RESULT_CANCELED) { Toast.makeText(this, R.string.marker_add_photo_canceled, Toast.LENGTH_LONG).show(); return; - } else if (resultCode == RESULT_OK) { + } else if (resultCode == RESULT_OK) { Uri srcUri = data.getData(); try (ParcelFileDescriptor parcelFd = getContentResolver().openFileDescriptor(srcUri, "r")) { FileDescriptor srcFd = parcelFd.getFileDescriptor(); @@ -261,7 +262,7 @@ public class MarkerEditActivity extends AbstractActivity { photoUri = FileUtils.getUriForFile(this, dstFile); setMarkerImageView(photoUri); - } catch(Exception e) { + } catch (Exception e) { Log.e(TAG, e.getMessage()); Toast.makeText(this, R.string.marker_add_canceled, Toast.LENGTH_LONG).show(); return; @@ -273,7 +274,7 @@ public class MarkerEditActivity extends AbstractActivity { /** * Checks and hide/shows all buttons/options about marker photo options. - * + *
* If a photo is set then one's options are shown, otherwise another ones are shown. */ private void hideAndShowOptions() { diff --git a/src/main/java/de/dennisguse/opentracks/TrackListActivity.java b/src/main/java/de/dennisguse/opentracks/TrackListActivity.java index ed3fe4db1..8f5a745b4 100644 --- a/src/main/java/de/dennisguse/opentracks/TrackListActivity.java +++ b/src/main/java/de/dennisguse/opentracks/TrackListActivity.java @@ -320,43 +320,45 @@ public class TrackListActivity extends AbstractListActivity implements ConfirmDe @Override public boolean onOptionsItemSelected(MenuItem item) { - Intent intent; - switch (item.getItemId()) { - case R.id.track_list_start_gps: - LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE); - if (locationManager != null && !locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { - intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); - startActivity(intent); + if (item.getItemId() == R.id.track_list_start_gps) { + LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE); + if (locationManager != null && !locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { + startActivity(new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS)); + } else { + // Invoke trackRecordingService + if (!isGpsStarted()) { + trackRecordingServiceConnection.startAndBind(this); + bindChangedCallback.run(); } else { - // Invoke trackRecordingService - if (!isGpsStarted()) { - trackRecordingServiceConnection.startAndBind(this); - bindChangedCallback.run(); - } else { - TrackRecordingServiceInterface trackRecordingService = trackRecordingServiceConnection.getServiceIfBound(); - if (trackRecordingService != null) { - trackRecordingService.stopGps(); - } - trackRecordingServiceConnection.unbindAndStop(this); + TrackRecordingServiceInterface trackRecordingService = trackRecordingServiceConnection.getServiceIfBound(); + if (trackRecordingService != null) { + trackRecordingService.stopGps(); } - - // Update menu after starting or stopping gps - this.invalidateOptionsMenu(); + trackRecordingServiceConnection.unbindAndStop(this); } - return true; - case R.id.track_list_aggregated_stats: - intent = IntentUtils.newIntent(this, AggregatedStatisticsActivity.class); - startActivity(intent); - return true; - case R.id.track_list_markers: - intent = IntentUtils.newIntent(this, MarkerListActivity.class); - startActivity(intent); - return true; - case R.id.track_list_settings: - intent = IntentUtils.newIntent(this, SettingsActivity.class); - startActivity(intent); - return true; + + // Update menu after starting or stopping gps + this.invalidateOptionsMenu(); + } + + return true; } + + if (item.getItemId() == R.id.track_list_aggregated_stats) { + startActivity(IntentUtils.newIntent(this, AggregatedStatisticsActivity.class)); + return true; + } + + if (item.getItemId() == R.id.track_list_markers) { + startActivity(IntentUtils.newIntent(this, MarkerListActivity.class)); + return true; + } + + if (item.getItemId() == R.id.track_list_settings) { + startActivity(IntentUtils.newIntent(this, SettingsActivity.class)); + return true; + } + return super.onOptionsItemSelected(item); } diff --git a/src/main/java/de/dennisguse/opentracks/TrackRecordedActivity.java b/src/main/java/de/dennisguse/opentracks/TrackRecordedActivity.java index a512526c7..7e547c0db 100644 --- a/src/main/java/de/dennisguse/opentracks/TrackRecordedActivity.java +++ b/src/main/java/de/dennisguse/opentracks/TrackRecordedActivity.java @@ -22,7 +22,6 @@ import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.View; -import android.view.ViewParent; import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; @@ -147,43 +146,51 @@ public class TrackRecordedActivity extends AbstractListActivity implements Confi @Override public boolean onOptionsItemSelected(MenuItem item) { - Intent intent; - switch (item.getItemId()) { - case R.id.track_detail_share: - intent = IntentUtils.newShareFileIntent(this, trackId); - intent = Intent.createChooser(intent, null); - startActivity(intent); - return true; - case R.id.track_detail_menu_show_on_map: - IntentDashboardUtils.startDashboard(this, false, trackId); - return true; - case R.id.track_detail_markers: - intent = IntentUtils.newIntent(this, MarkerListActivity.class) - .putExtra(MarkerListActivity.EXTRA_TRACK_ID, trackId); - startActivity(intent); - return true; - case R.id.track_detail_edit: - intent = IntentUtils.newIntent(this, TrackEditActivity.class) - .putExtra(TrackEditActivity.EXTRA_TRACK_ID, trackId); - startActivity(intent); - return true; - case R.id.track_detail_delete: - deleteTracks(trackId); - return true; - case R.id.track_detail_resume_track: - Intent newIntent = IntentUtils.newIntent(TrackRecordedActivity.this, TrackRecordingActivity.class) - .putExtra(TrackRecordingActivity.EXTRA_TRACK_ID, trackId); - startActivity(newIntent); - overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out); - finish(); - return true; - case R.id.track_detail_settings: - intent = IntentUtils.newIntent(this, SettingsActivity.class); - startActivity(intent); - return true; - default: - return super.onOptionsItemSelected(item); + if (item.getItemId() == R.id.track_detail_share) { + Intent intent = Intent.createChooser(IntentUtils.newShareFileIntent(this, trackId), null); + startActivity(intent); + return true; } + + if (item.getItemId() == R.id.track_detail_menu_show_on_map) { + IntentDashboardUtils.startDashboard(this, false, trackId); + return true; + } + + if (item.getItemId() == R.id.track_detail_markers) { + Intent intent = IntentUtils.newIntent(this, MarkerListActivity.class) + .putExtra(MarkerListActivity.EXTRA_TRACK_ID, trackId); + startActivity(intent); + return true; + } + + if (item.getItemId() == R.id.track_detail_edit) { + Intent intent = IntentUtils.newIntent(this, TrackEditActivity.class) + .putExtra(TrackEditActivity.EXTRA_TRACK_ID, trackId); + startActivity(intent); + return true; + } + + if (item.getItemId() == R.id.track_detail_delete) { + deleteTracks(trackId); + return true; + } + + if (item.getItemId() == R.id.track_detail_resume_track) { + Intent newIntent = IntentUtils.newIntent(TrackRecordedActivity.this, TrackRecordingActivity.class) + .putExtra(TrackRecordingActivity.EXTRA_TRACK_ID, trackId); + startActivity(newIntent); + overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out); + finish(); + return true; + } + + if (item.getItemId() == R.id.track_detail_settings) { + startActivity(IntentUtils.newIntent(this, SettingsActivity.class)); + return true; + } + + return super.onOptionsItemSelected(item); } @Override diff --git a/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java b/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java index ba32ecc27..5deffa4a6 100644 --- a/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java +++ b/src/main/java/de/dennisguse/opentracks/TrackRecordingActivity.java @@ -278,34 +278,41 @@ public class TrackRecordingActivity extends AbstractActivity implements ChooseAc @Override public boolean onOptionsItemSelected(MenuItem item) { - Intent intent; - switch (item.getItemId()) { - case R.id.track_detail_insert_marker: - intent = IntentUtils - .newIntent(this, MarkerEditActivity.class) - .putExtra(MarkerEditActivity.EXTRA_TRACK_ID, trackId); - startActivity(intent); - return true; - case R.id.track_detail_menu_show_on_map: - IntentDashboardUtils.startDashboard(this, true, trackId); - return true; - case R.id.track_detail_markers: - intent = IntentUtils.newIntent(this, MarkerListActivity.class) - .putExtra(MarkerListActivity.EXTRA_TRACK_ID, trackId); - startActivity(intent); - return true; - case R.id.track_detail_edit: - intent = IntentUtils.newIntent(this, TrackEditActivity.class) - .putExtra(TrackEditActivity.EXTRA_TRACK_ID, trackId); - startActivity(intent); - return true; - case R.id.track_detail_settings: - intent = IntentUtils.newIntent(this, SettingsActivity.class); - startActivity(intent); - return true; - default: - return super.onOptionsItemSelected(item); + if (item.getItemId() == R.id.track_detail_insert_marker) { + Intent intent = IntentUtils + .newIntent(this, MarkerEditActivity.class) + .putExtra(MarkerEditActivity.EXTRA_TRACK_ID, trackId); + startActivity(intent); + return true; } + + if (item.getItemId() == R.id.track_detail_menu_show_on_map) { + IntentDashboardUtils.startDashboard(this, true, trackId); + return true; + } + + if (item.getItemId() == R.id.track_detail_markers) { + Intent intent = IntentUtils.newIntent(this, MarkerListActivity.class) + .putExtra(MarkerListActivity.EXTRA_TRACK_ID, trackId); + startActivity(intent); + return true; + + } + + if (item.getItemId() == R.id.track_detail_edit) { + Intent intent = IntentUtils.newIntent(this, TrackEditActivity.class) + .putExtra(TrackEditActivity.EXTRA_TRACK_ID, trackId); + startActivity(intent); + return true; + } + + if (item.getItemId() == R.id.track_detail_settings) { + Intent intent = IntentUtils.newIntent(this, SettingsActivity.class); + startActivity(intent); + return true; + } + + return super.onOptionsItemSelected(item); } /** diff --git a/src/main/java/de/dennisguse/opentracks/fragments/MarkerDetailFragment.java b/src/main/java/de/dennisguse/opentracks/fragments/MarkerDetailFragment.java index a6df11abc..b13b4282f 100644 --- a/src/main/java/de/dennisguse/opentracks/fragments/MarkerDetailFragment.java +++ b/src/main/java/de/dennisguse/opentracks/fragments/MarkerDetailFragment.java @@ -184,29 +184,34 @@ public class MarkerDetailFragment extends Fragment { public boolean onOptionsItemSelected(MenuItem item) { Marker.Id markerId = getArguments().getParcelable(KEY_MARKER_ID); //TODO Should only happen in onCreate? FragmentActivity fragmentActivity = getActivity(); - Intent intent; - switch (item.getItemId()) { - case R.id.marker_detail_show_on_map: - IntentUtils.showCoordinateOnMap(getContext(), marker); - return true; - case R.id.marker_detail_edit: - intent = IntentUtils.newIntent(fragmentActivity, MarkerEditActivity.class) - .putExtra(MarkerEditActivity.EXTRA_MARKER_ID, markerId); - startActivity(intent); - return true; - case R.id.marker_detail_share: - if (marker.hasPhoto()) { - intent = IntentUtils.newShareImageIntent(getContext(), marker.getPhotoURI()); - intent = Intent.createChooser(intent, null); - startActivity(intent); - } - return true; - case R.id.marker_detail_delete: - DeleteMarkerDialogFragment.showDialog(getChildFragmentManager(), markerId); - return true; - default: - return super.onOptionsItemSelected(item); + + if (item.getItemId() == R.id.marker_detail_show_on_map) { + IntentUtils.showCoordinateOnMap(getContext(), marker); + return true; } + + if (item.getItemId() == R.id.marker_detail_edit) { + Intent intent = IntentUtils.newIntent(fragmentActivity, MarkerEditActivity.class) + .putExtra(MarkerEditActivity.EXTRA_MARKER_ID, markerId); + startActivity(intent); + return true; + } + + if (item.getItemId() == R.id.marker_detail_share) { + if (marker.hasPhoto()) { + Intent intent = IntentUtils.newShareImageIntent(getContext(), marker.getPhotoURI()); + intent = Intent.createChooser(intent, null); + startActivity(intent); + } + return true; + } + + if (item.getItemId() == R.id.marker_detail_delete) { + DeleteMarkerDialogFragment.showDialog(getChildFragmentManager(), markerId); + return true; + } + + return super.onOptionsItemSelected(item); } private void updateMarker(boolean refresh) {