From c8c00f83914e9124a67c306028109fac4a5d9845 Mon Sep 17 00:00:00 2001 From: Jimmy Shih Date: Tue, 25 Jun 2013 16:42:55 -0700 Subject: [PATCH] Use ApiAdapter.invalidateMenu to refresh the action bar menu. --- .../apps/mytracks/MarkerListActivity.java | 10 +++------- .../apps/mytracks/TrackDetailActivity.java | 4 ++-- .../apps/mytracks/TrackListActivity.java | 18 ++++++------------ 3 files changed, 11 insertions(+), 21 deletions(-) diff --git a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java index d8f567d36..ecfc71d9d 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/MarkerListActivity.java @@ -121,7 +121,7 @@ public class MarkerListActivity extends AbstractMyTracksActivity implements Dele runOnUiThread(new Runnable() { @Override public void run() { - updateMenu(); + ApiAdapterFactory.getApiAdapter().invalidMenu(MarkerListActivity.this); } }); } @@ -222,7 +222,7 @@ public class MarkerListActivity extends AbstractMyTracksActivity implements Dele @Override protected void onResume() { super.onResume(); - updateMenu(); + ApiAdapterFactory.getApiAdapter().invalidMenu(this); } @Override @@ -242,14 +242,10 @@ public class MarkerListActivity extends AbstractMyTracksActivity implements Dele insertMarkerMenuItem = menu.findItem(R.id.marker_list_insert_marker); searchMenuItem = menu.findItem(R.id.marker_list_search); ApiAdapterFactory.getApiAdapter().configureSearchWidget(this, searchMenuItem, null); - updateMenu(); - return true; - } - - private void updateMenu() { if (insertMarkerMenuItem != null) { insertMarkerMenuItem.setVisible(track.getId() == recordingTrackId && !recordingTrackPaused); } + return true; } @Override diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java index ee623d82b..da20f5e05 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java @@ -137,8 +137,8 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity implements runOnUiThread(new Runnable() { @Override public void run() { + ApiAdapterFactory.getApiAdapter().invalidMenu(TrackDetailActivity.this); boolean isRecording = trackId == recordingTrackId; - updateMenuItems(isRecording, recordingTrackPaused); trackController.update(isRecording, recordingTrackPaused); } }); @@ -237,8 +237,8 @@ public class TrackDetailActivity extends AbstractSendToGoogleActivity implements trackDataHub.loadTrack(trackId); // Update UI + ApiAdapterFactory.getApiAdapter().invalidMenu(this); boolean isRecording = trackId == recordingTrackId; - updateMenuItems(isRecording, recordingTrackPaused); trackController.onResume(isRecording, recordingTrackPaused); } diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackListActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackListActivity.java index 4e46d5484..dbbe54ef3 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackListActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackListActivity.java @@ -191,12 +191,10 @@ public class TrackListActivity extends AbstractSendToGoogleActivity runOnUiThread(new Runnable() { @Override public void run() { - boolean isGpsStarted = TrackRecordingServiceConnectionUtils - .isRecordingServiceRunning(TrackListActivity.this); + ApiAdapterFactory.getApiAdapter().invalidMenu(TrackListActivity.this); + sectionResourceCursorAdapter.notifyDataSetChanged(); boolean isRecording = recordingTrackId != PreferencesUtils.RECORDING_TRACK_ID_DEFAULT; - updateMenuItems(isGpsStarted, isRecording); - sectionResourceCursorAdapter.notifyDataSetChanged(); trackController.update(isRecording, recordingTrackPaused); } }); @@ -416,10 +414,9 @@ public class TrackListActivity extends AbstractSendToGoogleActivity super.onResume(); // Update UI - boolean isGpsStarted = TrackRecordingServiceConnectionUtils.isRecordingServiceRunning(this); - boolean isRecording = recordingTrackId != PreferencesUtils.RECORDING_TRACK_ID_DEFAULT; - updateMenuItems(isGpsStarted, isRecording); + ApiAdapterFactory.getApiAdapter().invalidMenu(this); sectionResourceCursorAdapter.notifyDataSetChanged(); + boolean isRecording = recordingTrackId != PreferencesUtils.RECORDING_TRACK_ID_DEFAULT; trackController.onResume(isRecording, recordingTrackPaused); } @@ -498,14 +495,11 @@ public class TrackListActivity extends AbstractSendToGoogleActivity intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); } else { - boolean isGpsStarted = TrackRecordingServiceConnectionUtils.isRecordingServiceRunning( + startGps = !TrackRecordingServiceConnectionUtils.isRecordingServiceRunning( this); - boolean isRecording = recordingTrackId != PreferencesUtils.RECORDING_TRACK_ID_DEFAULT; - - startGps = !isGpsStarted; // Update menu - updateMenuItems(startGps, isRecording); + ApiAdapterFactory.getApiAdapter().invalidMenu(this); // Show toast Toast toast = Toast.makeText(