Do not allow editing "Shared with me" tracks.

Do not allow editing/deleting "Shared with me" markers.
This commit is contained in:
Jimmy Shih
2013-02-04 09:45:24 -08:00
parent 6559bfa8e0
commit b5fa77a98d
2 changed files with 15 additions and 3 deletions
@@ -17,6 +17,7 @@
package com.google.android.apps.mytracks;
import com.google.android.apps.mytracks.content.MyTracksProviderUtils;
import com.google.android.apps.mytracks.content.Track;
import com.google.android.apps.mytracks.content.Waypoint;
import com.google.android.apps.mytracks.content.Waypoint.WaypointType;
import com.google.android.apps.mytracks.fragments.DeleteOneMarkerDialogFragment;
@@ -42,6 +43,7 @@ public class MarkerDetailActivity extends AbstractMyTracksActivity {
public static final String EXTRA_MARKER_ID = "marker_id";
private static final String TAG = MarkerDetailActivity.class.getSimpleName();
private MyTracksProviderUtils myTracksProviderUtils;
private long markerId;
private Waypoint waypoint;
@@ -53,6 +55,7 @@ public class MarkerDetailActivity extends AbstractMyTracksActivity {
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this);
markerId = getIntent().getLongExtra(EXTRA_MARKER_ID, -1L);
if (markerId == -1L) {
Log.d(TAG, "invalid marker id");
@@ -99,6 +102,10 @@ public class MarkerDetailActivity extends AbstractMyTracksActivity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.marker_detail, menu);
Track track = myTracksProviderUtils.getTrack(waypoint.getTrackId());
menu.findItem(R.id.marker_detail_edit).setVisible(!track.isSharedWithMe());
menu.findItem(R.id.marker_detail_delete).setVisible(!track.isSharedWithMe());
return true;
}
@@ -79,6 +79,7 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del
private static final String CURRENT_TAB_TAG_KEY = "current_tab_tag_key";
// The following are set in onCreate
private MyTracksProviderUtils myTracksProviderUtils;
private SharedPreferences sharedPreferences;
private TrackRecordingServiceConnection trackRecordingServiceConnection;
private TrackDataHub trackDataHub;
@@ -184,6 +185,7 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del
super.onCreate(savedInstanceState);
handleIntent(getIntent());
myTracksProviderUtils = MyTracksProviderUtils.Factory.get(this);
sharedPreferences = getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE);
trackRecordingServiceConnection = new TrackRecordingServiceConnection(
@@ -292,7 +294,10 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del
.setTitle(getString(R.string.menu_save_format, fileTypes[2]));
menu.findItem(R.id.track_detail_save_tcx)
.setTitle(getString(R.string.menu_save_format, fileTypes[3]));
Track track = myTracksProviderUtils.getTrack(trackId);
menu.findItem(R.id.track_detail_edit).setVisible(!track.isSharedWithMe());
insertMarkerMenuItem = menu.findItem(R.id.track_detail_insert_marker);
playMenuItem = menu.findItem(R.id.track_detail_play);
shareMenuItem = menu.findItem(R.id.track_detail_share);
@@ -466,7 +471,7 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del
trackId = intent.getLongExtra(EXTRA_TRACK_ID, -1L);
markerId = intent.getLongExtra(EXTRA_MARKER_ID, -1L);
if (markerId != -1L) {
Waypoint waypoint = MyTracksProviderUtils.Factory.get(this).getWaypoint(markerId);
Waypoint waypoint = myTracksProviderUtils.getWaypoint(markerId);
if (waypoint == null) {
exit();
return;
@@ -539,7 +544,7 @@ public class TrackDetailActivity extends AbstractMyTracksActivity implements Del
if (isRecording) {
title = getString(isPaused ? R.string.generic_paused : R.string.generic_recording);
} else {
Track track = MyTracksProviderUtils.Factory.get(this).getTrack(trackId);
Track track = myTracksProviderUtils.getTrack(trackId);
title = track != null ? track.getName() : getString(R.string.my_tracks_app_name);
}
setTitle(title);