diff --git a/MyTracks/res/values/strings.xml b/MyTracks/res/values/strings.xml index 41c1246cc..e00746b28 100644 --- a/MyTracks/res/values/strings.xml +++ b/MyTracks/res/values/strings.xml @@ -789,8 +789,12 @@ limitations under the License. translation_description="The text on a button to say cancel."> Cancel + + Delete all? + + translation_description="When deleting selected items, the title on the confirmation dialog."> Delete selected? Canceled, no marker added. + + All markers for this track will be permanently deleted from the device. + The marker will be permanently deleted from the device. @@ -1048,7 +1056,7 @@ limitations under the License. - All markers for this track will be permanently deleted from the device. + The selected markers will be permanently deleted from the device. - Delete all? - The track and its markers will be permanently deleted from the device. If Google Drive sync is diff --git a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java index e4f587cf1..befbb3e3d 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java @@ -318,6 +318,9 @@ public class MarkerListActivity extends AbstractMyTracksActivity implements Dele } return true; case R.id.list_context_menu_delete: + if (markerIds.length > 1 && markerIds.length == listView.getCount()) { + markerIds = new long[] { -1L }; + } DeleteMarkerDialogFragment.newInstance(markerIds) .show(getSupportFragmentManager(), DeleteMarkerDialogFragment.DELETE_MARKER_DIALOG_TAG); return true; diff --git a/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDeleteDialogFragment.java b/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDeleteDialogFragment.java index a1d071e06..bd3a1c658 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDeleteDialogFragment.java +++ b/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDeleteDialogFragment.java @@ -84,7 +84,7 @@ public class ConfirmDeleteDialogFragment extends AbstractMyTracksDialogFragment int titleId; int messageId; if (trackIds.length == 1 && trackIds[0] == -1L) { - titleId = R.string.track_delete_all_confirm_title; + titleId = R.string.generic_delete_all_confirm_title; messageId = R.string.track_delete_all_confirm_message; } else { titleId = trackIds.length > 1 ? R.string.generic_delete_selected_confirm_title diff --git a/MyTracks/src/com/google/android/apps/mytracks/fragments/DeleteMarkerDialogFragment.java b/MyTracks/src/com/google/android/apps/mytracks/fragments/DeleteMarkerDialogFragment.java index c6f867e8a..5b23c3010 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/fragments/DeleteMarkerDialogFragment.java +++ b/MyTracks/src/com/google/android/apps/mytracks/fragments/DeleteMarkerDialogFragment.java @@ -76,10 +76,17 @@ public class DeleteMarkerDialogFragment extends AbstractMyTracksDialogFragment { protected Dialog createDialog() { final FragmentActivity fragmentActivity = getActivity(); final long[] markerIds = getArguments().getLongArray(KEY_MARKER_IDS); - int titleId = markerIds.length > 1 ? R.string.generic_delete_selected_confirm_title - : R.string.marker_delete_one_confirm_title; - int messageId = markerIds.length > 1 ? R.string.marker_delete_multiple_confirm_message - : R.string.marker_delete_one_confirm_message; + int titleId; + int messageId; + if (markerIds.length == 1 && markerIds[0] == -1L) { + titleId = R.string.generic_delete_all_confirm_title; + messageId = R.string.marker_delete_all_confirm_message; + } else { + titleId = markerIds.length > 1 ? R.string.generic_delete_selected_confirm_title + : R.string.marker_delete_one_confirm_title; + messageId = markerIds.length > 1 ? R.string.marker_delete_multiple_confirm_message + : R.string.marker_delete_one_confirm_message; + } return DialogUtils.createConfirmationDialog( fragmentActivity, titleId, getString(messageId), new DialogInterface.OnClickListener() { @Override