From c0900491d67b765e59c17fcba884f46251fea7ba Mon Sep 17 00:00:00 2001 From: Jimmy Shih Date: Wed, 8 May 2013 13:09:00 -0700 Subject: [PATCH] Modify ConfirmDialogFragment to pass in an array of track ids --- .../AbstractSendToGoogleActivity.java | 15 ++++++++------- .../apps/mytracks/TrackDetailActivity.java | 8 ++++---- .../fragments/ConfirmDialogFragment.java | 19 +++++++++---------- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/MyTracks/src/com/google/android/apps/mytracks/AbstractSendToGoogleActivity.java b/MyTracks/src/com/google/android/apps/mytracks/AbstractSendToGoogleActivity.java index 2c29a0103..a066451db 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/AbstractSendToGoogleActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/AbstractSendToGoogleActivity.java @@ -346,35 +346,36 @@ public abstract class AbstractSendToGoogleActivity extends AbstractMyTracksActiv if (shareTrack.equals(driveValue)) { ConfirmDialogFragment.newInstance(R.string.confirm_share_drive_key, PreferencesUtils.CONFIRM_SHARE_DRIVE_DEFAULT, - getString(R.string.share_track_drive_confirm_message), trackId) + getString(R.string.share_track_drive_confirm_message), new long[] { trackId }) .show(getSupportFragmentManager(), ConfirmDialogFragment.CONFIRM_DIALOG_TAG); } else if (shareTrack.equals(mapsValue)) { ConfirmDialogFragment.newInstance(R.string.confirm_share_maps_key, PreferencesUtils.CONFIRM_SHARE_MAPS_DEFAULT, StringUtils.getHtml( this, R.string.share_track_maps_confirm_message, R.string.maps_public_unlisted_url), - trackId).show(getSupportFragmentManager(), ConfirmDialogFragment.CONFIRM_DIALOG_TAG); + new long[] { trackId }) + .show(getSupportFragmentManager(), ConfirmDialogFragment.CONFIRM_DIALOG_TAG); } else { ConfirmDialogFragment.newInstance(R.string.confirm_share_file_key, PreferencesUtils.CONFIRM_SHARE_FILE_DEFAULT, - getString(R.string.share_track_file_confirm_message), trackId) + getString(R.string.share_track_file_confirm_message), new long[] { trackId }) .show(getSupportFragmentManager(), ConfirmDialogFragment.CONFIRM_DIALOG_TAG); } } @Override - public void onConfirmDone(int confirmId, long trackId) { + public void onConfirmDone(int confirmId, long[] trackIds) { SendRequest newRequest; switch (confirmId) { case R.string.confirm_share_drive_key: AnalyticsUtils.sendPageViews(this, "/action/share_drive"); - newRequest = new SendRequest(trackId); + newRequest = new SendRequest(trackIds[0]); newRequest.setSendDrive(true); newRequest.setDriveShare(true); sendToGoogle(newRequest); break; case R.string.confirm_share_maps_key: AnalyticsUtils.sendPageViews(this, "/action/share_maps"); - newRequest = new SendRequest(trackId); + newRequest = new SendRequest(trackIds[0]); newRequest.setSendMaps(true); newRequest.setMapsShare(true); sendToGoogle(newRequest); @@ -393,7 +394,7 @@ public abstract class AbstractSendToGoogleActivity extends AbstractMyTracksActiv trackFileFormat = TrackFileFormat.TCX; } Intent intent = IntentUtils.newIntent(this, SaveActivity.class) - .putExtra(SaveActivity.EXTRA_TRACK_ID, trackId) + .putExtra(SaveActivity.EXTRA_TRACK_ID, trackIds[0]) .putExtra(SaveActivity.EXTRA_TRACK_FILE_FORMAT, (Parcelable) trackFileFormat) .putExtra(SaveActivity.EXTRA_SHARE_TRACK, true); startActivity(intent); diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java index e2fc0620e..200aa9173 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java @@ -345,7 +345,7 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity if (GoogleEarthUtils.isEarthInstalled(this)) { ConfirmDialogFragment.newInstance(R.string.confirm_play_earth_key, PreferencesUtils.CONFIRM_PLAY_EARTH_DEFAULT, - getString(R.string.track_detail_play_confirm_message), trackId) + getString(R.string.track_detail_play_confirm_message), new long[] { trackId }) .show(getSupportFragmentManager(), ConfirmDialogFragment.CONFIRM_DIALOG_TAG); } else { new InstallEarthDialogFragment().show( @@ -425,18 +425,18 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity } @Override - public void onConfirmDone(int confirmId, long confirmTrackId) { + public void onConfirmDone(int confirmId, long[] confirmTrackIds) { switch (confirmId) { case R.string.confirm_play_earth_key: AnalyticsUtils.sendPageViews(this, "/action/play"); Intent intent = IntentUtils.newIntent(this, SaveActivity.class) - .putExtra(SaveActivity.EXTRA_TRACK_ID, confirmTrackId) + .putExtra(SaveActivity.EXTRA_TRACK_ID, confirmTrackIds[0]) .putExtra(SaveActivity.EXTRA_TRACK_FILE_FORMAT, (Parcelable) TrackFileFormat.KML) .putExtra(SaveActivity.EXTRA_PLAY_TRACK, true); startActivity(intent); break; default: - super.onConfirmDone(confirmId, confirmTrackId); + super.onConfirmDone(confirmId, confirmTrackIds); } } diff --git a/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDialogFragment.java b/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDialogFragment.java index 9826d903c..f55f09790 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDialogFragment.java +++ b/MyTracks/src/com/google/android/apps/mytracks/fragments/ConfirmDialogFragment.java @@ -47,7 +47,7 @@ public class ConfirmDialogFragment extends DialogFragment { /** * Called when confirm is done. */ - public void onConfirmDone(int confirmId, long trackId); + public void onConfirmDone(int confirmId, long[] trackIds); } public static final String CONFIRM_DIALOG_TAG = "confirmDialog"; @@ -55,17 +55,17 @@ public class ConfirmDialogFragment extends DialogFragment { private static final String KEY_CONFIRM_ID = "confirmId"; private static final String KEY_DEFAULT_VALUE = "defaultValue"; private static final String KEY_MESSAGE = "message"; - private static final String KEY_TRACK_ID = "trackId"; + private static final String KEY_TRACK_IDS = "trackIds"; private CheckBox checkBox; public static ConfirmDialogFragment newInstance( - int confirmId, boolean defaultValue, CharSequence message, long trackId) { + int confirmId, boolean defaultValue, CharSequence message, long[] trackIds) { Bundle bundle = new Bundle(); bundle.putInt(KEY_CONFIRM_ID, confirmId); bundle.putBoolean(KEY_DEFAULT_VALUE, defaultValue); bundle.putCharSequence(KEY_MESSAGE, message); - bundle.putLong(KEY_TRACK_ID, trackId); + bundle.putLongArray(KEY_TRACK_IDS, trackIds); ConfirmDialogFragment confirmDialogFragment = new ConfirmDialogFragment(); confirmDialogFragment.setArguments(bundle); @@ -93,9 +93,9 @@ public class ConfirmDialogFragment extends DialogFragment { boolean defaultValue = getArguments().getBoolean(KEY_DEFAULT_VALUE); fragmentActivity = getActivity(); if (!PreferencesUtils.getBoolean(fragmentActivity, confirmId, defaultValue)) { - long trackId = getArguments().getLong(KEY_TRACK_ID); + long[] trackIds = getArguments().getLongArray(KEY_TRACK_IDS); dismiss(); - caller.onConfirmDone(confirmId, trackId); + caller.onConfirmDone(confirmId, trackIds); } } @@ -106,15 +106,14 @@ public class ConfirmDialogFragment extends DialogFragment { textView.setText(getArguments().getCharSequence(KEY_MESSAGE)); checkBox = (CheckBox) view.findViewById(R.id.confirm_dialog_check_box); - return new AlertDialog.Builder(fragmentActivity).setNegativeButton( - R.string.generic_no, null) + return new AlertDialog.Builder(fragmentActivity).setNegativeButton(R.string.generic_no, null) .setPositiveButton(R.string.generic_yes, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { int confirmId = getArguments().getInt(KEY_CONFIRM_ID); - long trackId = getArguments().getLong(KEY_TRACK_ID); + long[] trackIds = getArguments().getLongArray(KEY_TRACK_IDS); PreferencesUtils.setBoolean(fragmentActivity, confirmId, !checkBox.isChecked()); - caller.onConfirmDone(confirmId, trackId); + caller.onConfirmDone(confirmId, trackIds); } }).setTitle(R.string.generic_confirm_title).setView(view).create(); }