Code cleanup, refactor onResume logic in MyTracksMapFragment.

This commit is contained in:
Jimmy Shih
2013-05-24 12:38:57 -07:00
parent d6cfdd007a
commit 468ed40a5d
@@ -274,13 +274,27 @@ public class MyTracksMapFragment extends SupportMapFragment implements TrackData
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
resumeTrackDataHub();
MyTracksLocationManager myTracksLocationManager = new MyTracksLocationManager(
getActivity(), Looper.myLooper(), false);
boolean isGpsProviderEnabled = myTracksLocationManager.isGpsProviderEnabled();
myTracksLocationManager.close();
if (googleMap != null) { if (googleMap != null) {
// Update map type
int mapType = PreferencesUtils.getInt( int mapType = PreferencesUtils.getInt(
getActivity(), R.string.map_type_key, PreferencesUtils.MAP_TYPE_DEFAUlT); getActivity(), R.string.map_type_key, PreferencesUtils.MAP_TYPE_DEFAUlT);
googleMap.setMapType(mapType); googleMap.setMapType(mapType);
ApiAdapterFactory.getApiAdapter().invalidMenu(getActivity()); ApiAdapterFactory.getApiAdapter().invalidMenu(getActivity());
// Disable my location if gps is disabled
googleMap.setMyLocationEnabled(isGpsProviderEnabled);
} }
resumeTrackDataHub();
// setWarningMessage depends on resumeTrackDataHub being invoked beforehand
setWarningMessage(isGpsProviderEnabled);
updateCurrentLocation(); updateCurrentLocation();
} }
@@ -538,16 +552,6 @@ public class MyTracksMapFragment extends SupportMapFragment implements TrackData
trackDataHub.registerTrackDataListener(this, EnumSet.of(TrackDataType.SELECTED_TRACK, trackDataHub.registerTrackDataListener(this, EnumSet.of(TrackDataType.SELECTED_TRACK,
TrackDataType.WAYPOINTS_TABLE, TrackDataType.SAMPLED_IN_TRACK_POINTS_TABLE, TrackDataType.WAYPOINTS_TABLE, TrackDataType.SAMPLED_IN_TRACK_POINTS_TABLE,
TrackDataType.SAMPLED_OUT_TRACK_POINTS_TABLE, TrackDataType.PREFERENCE)); TrackDataType.SAMPLED_OUT_TRACK_POINTS_TABLE, TrackDataType.PREFERENCE));
MyTracksLocationManager myTracksLocationManager = new MyTracksLocationManager(
getActivity(), Looper.myLooper(), false);
boolean isGpsProviderEnabled = myTracksLocationManager.isGpsProviderEnabled();
if (googleMap != null) {
googleMap.setMyLocationEnabled(isGpsProviderEnabled);
}
setWarningMessage(isGpsProviderEnabled);
myTracksLocationManager.close();
} }
/** /**