diff --git a/MyTracks/res/drawable-hdpi/menu_my_location.png b/MyTracks/res/drawable-hdpi/menu_my_location.png deleted file mode 100644 index d7fae7e98..000000000 Binary files a/MyTracks/res/drawable-hdpi/menu_my_location.png and /dev/null differ diff --git a/MyTracks/res/drawable-hdpi/my_location_normal.png b/MyTracks/res/drawable-hdpi/my_location_normal.png new file mode 100644 index 000000000..742c0e04e Binary files /dev/null and b/MyTracks/res/drawable-hdpi/my_location_normal.png differ diff --git a/MyTracks/res/drawable-hdpi/my_location_pressed.png b/MyTracks/res/drawable-hdpi/my_location_pressed.png new file mode 100644 index 000000000..b03dd0d66 Binary files /dev/null and b/MyTracks/res/drawable-hdpi/my_location_pressed.png differ diff --git a/MyTracks/res/drawable-mdpi/menu_my_location.png b/MyTracks/res/drawable-mdpi/menu_my_location.png deleted file mode 100644 index 9d1f4403a..000000000 Binary files a/MyTracks/res/drawable-mdpi/menu_my_location.png and /dev/null differ diff --git a/MyTracks/res/drawable-mdpi/my_location_normal.png b/MyTracks/res/drawable-mdpi/my_location_normal.png new file mode 100644 index 000000000..60daac9bf Binary files /dev/null and b/MyTracks/res/drawable-mdpi/my_location_normal.png differ diff --git a/MyTracks/res/drawable-mdpi/my_location_pressed.png b/MyTracks/res/drawable-mdpi/my_location_pressed.png new file mode 100644 index 000000000..f4ea7f804 Binary files /dev/null and b/MyTracks/res/drawable-mdpi/my_location_pressed.png differ diff --git a/MyTracks/res/drawable-xhdpi/menu_my_location.png b/MyTracks/res/drawable-xhdpi/menu_my_location.png deleted file mode 100644 index 52ca8ab7f..000000000 Binary files a/MyTracks/res/drawable-xhdpi/menu_my_location.png and /dev/null differ diff --git a/MyTracks/res/drawable-xhdpi/my_location_normal.png b/MyTracks/res/drawable-xhdpi/my_location_normal.png new file mode 100644 index 000000000..f1b6eb960 Binary files /dev/null and b/MyTracks/res/drawable-xhdpi/my_location_normal.png differ diff --git a/MyTracks/res/drawable-xhdpi/my_location_pressed.png b/MyTracks/res/drawable-xhdpi/my_location_pressed.png new file mode 100644 index 000000000..c49415222 Binary files /dev/null and b/MyTracks/res/drawable-xhdpi/my_location_pressed.png differ diff --git a/MyTracks/res/drawable/my_location.xml b/MyTracks/res/drawable/my_location.xml new file mode 100644 index 000000000..7caede76c --- /dev/null +++ b/MyTracks/res/drawable/my_location.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/MyTracks/res/layout/map.xml b/MyTracks/res/layout/map.xml index f2e3b14bc..95f808304 100644 --- a/MyTracks/res/layout/map.xml +++ b/MyTracks/res/layout/map.xml @@ -26,6 +26,16 @@ limitations under the License. android:id="@+id/map_view" android:layout_height="fill_parent" android:layout_width="fill_parent" /> + - Markers - - My location - Play @@ -1155,6 +1151,11 @@ limitations under the License. + + My Location + diff --git a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java index 5fe11f822..54ecbdf7e 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/TrackDetailActivity.java @@ -237,9 +237,7 @@ public class TrackDetailActivity extends AbstractMyTracksActivity menu.findItem(R.id.track_detail_chart_settings).setVisible( ChartFragment.CHART_FRAGMENT_TAG.equals(currentTabTag)); menu.findItem(R.id.track_detail_stats_settings).setVisible( - StatsFragment.STATS_FRAGMENT_TAG.equals(currentTabTag)); - menu.findItem(R.id.track_detail_my_location) - .setVisible(MapFragment.MAP_FRAGMENT_TAG.equals(currentTabTag)); + StatsFragment.STATS_FRAGMENT_TAG.equals(currentTabTag)); MenuItem satelliteMode = menu.findItem(R.id.track_detail_satellite_mode) .setVisible(MapFragment.MAP_FRAGMENT_TAG.equals(currentTabTag)); @@ -343,13 +341,6 @@ public class TrackDetailActivity extends AbstractMyTracksActivity DeleteOneTrackDialogFragment.newInstance(trackId).show( getSupportFragmentManager(), DeleteOneTrackDialogFragment.DELETE_ONE_TRACK_DIALOG_TAG); return true; - case R.id.track_detail_my_location: - mapFragment = (MapFragment) getSupportFragmentManager() - .findFragmentByTag(MapFragment.MAP_FRAGMENT_TAG); - if (mapFragment != null) { - mapFragment.showMyLocation(); - } - return true; case R.id.track_detail_satellite_mode: mapFragment = (MapFragment) getSupportFragmentManager() .findFragmentByTag(MapFragment.MAP_FRAGMENT_TAG); diff --git a/MyTracks/src/com/google/android/apps/mytracks/fragments/MapFragment.java b/MyTracks/src/com/google/android/apps/mytracks/fragments/MapFragment.java index ef43990fa..03163f496 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/fragments/MapFragment.java +++ b/MyTracks/src/com/google/android/apps/mytracks/fragments/MapFragment.java @@ -43,6 +43,7 @@ import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; +import android.widget.ImageButton; import android.widget.TextView; import android.widget.Toast; @@ -86,6 +87,7 @@ public class MapFragment extends Fragment private View mapViewContainer; private MapOverlay mapOverlay; private MapView mapView; + private ImageButton myLocationImageButton; private TextView messageTextView; @Override @@ -100,6 +102,13 @@ public class MapFragment extends Fragment mapView.setOnTouchListener(this); mapView.setBuiltInZoomControls(true); mapView.getOverlays().add(mapOverlay); + myLocationImageButton = (ImageButton) mapViewContainer.findViewById(R.id.map_my_location); + myLocationImageButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + showMyLocation(); + } + }); messageTextView = (TextView) mapViewContainer.findViewById(R.id.map_message); return mapViewContainer; @@ -150,7 +159,7 @@ public class MapFragment extends Fragment /** * Shows my location. */ - public void showMyLocation() { + private void showMyLocation() { updateTrackDataHub(); keepMyLocationVisible = true; zoomToMyLocation = true;