mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-27 04:43:54 +01:00
Implement map marker click actions
This commit is contained in:
parent
7a06073185
commit
32db7b3239
6 changed files with 232 additions and 32 deletions
|
|
@ -14,7 +14,10 @@ import android.view.View;
|
|||
import android.view.ViewGroup;
|
||||
import android.view.animation.Animation;
|
||||
import android.view.animation.AnimationUtils;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
|
@ -25,6 +28,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior;
|
|||
import com.google.android.material.floatingactionbutton.FloatingActionButton;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
import com.mapbox.mapboxsdk.Mapbox;
|
||||
import com.mapbox.mapboxsdk.annotations.Marker;
|
||||
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
||||
import com.mapbox.mapboxsdk.camera.CameraUpdateFactory;
|
||||
import com.mapbox.mapboxsdk.geometry.LatLng;
|
||||
|
|
@ -40,6 +44,9 @@ import butterknife.BindView;
|
|||
import butterknife.ButterKnife;
|
||||
import fr.free.nrw.commons.CommonsApplication;
|
||||
import fr.free.nrw.commons.R;
|
||||
import fr.free.nrw.commons.Utils;
|
||||
import fr.free.nrw.commons.bookmarks.locations.BookmarkLocationsDao;
|
||||
import fr.free.nrw.commons.contributions.ContributionController;
|
||||
import fr.free.nrw.commons.contributions.MainActivity;
|
||||
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment;
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
|
|
@ -83,6 +90,36 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
@BindView(R.id.bottom_sheet_details)
|
||||
View bottomSheetDetails;
|
||||
|
||||
@BindView(R.id.bookmarkButtonImage)
|
||||
ImageView bookmarkButtonImage;
|
||||
|
||||
@BindView(R.id.bookmarkButton)
|
||||
LinearLayout bookmarkButton;
|
||||
|
||||
@BindView(R.id.wikipediaButton)
|
||||
LinearLayout wikipediaButton;
|
||||
|
||||
@BindView(R.id.wikidataButton)
|
||||
LinearLayout wikidataButton;
|
||||
|
||||
@BindView(R.id.directionsButton)
|
||||
LinearLayout directionsButton;
|
||||
|
||||
@BindView(R.id.commonsButton)
|
||||
LinearLayout commonsButton;
|
||||
|
||||
@BindView(R.id.description)
|
||||
TextView description;
|
||||
|
||||
@BindView(R.id.title)
|
||||
TextView title;
|
||||
|
||||
@BindView(R.id.category)
|
||||
TextView distance;
|
||||
|
||||
@BindView(R.id.icon)
|
||||
ImageView icon;
|
||||
|
||||
@Inject
|
||||
LocationServiceManager locationManager;
|
||||
|
||||
|
|
@ -93,6 +130,12 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
@Named("default_preferences")
|
||||
JsonKvStore applicationKvStore;
|
||||
|
||||
@Inject
|
||||
BookmarkLocationsDao bookmarkLocationDao;
|
||||
|
||||
@Inject
|
||||
ContributionController controller;
|
||||
|
||||
|
||||
private BottomSheetBehavior bottomSheetListBehavior;
|
||||
private BottomSheetBehavior bottomSheetDetailsBehavior;
|
||||
|
|
@ -115,6 +158,8 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
boolean isDarkTheme;
|
||||
boolean isFabOpen;
|
||||
boolean isBottomListSheetExpanded;
|
||||
private Marker selectedMarker;
|
||||
private Place selectedPlace;
|
||||
|
||||
private final double CAMERA_TARGET_SHIFT_FACTOR_PORTRAIT = 0.06;
|
||||
private final double CAMERA_TARGET_SHIFT_FACTOR_LANDSCAPE = 0.04;
|
||||
|
|
@ -321,7 +366,7 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
* @param nearbyPlacesInfo This variable has place list information and distances.
|
||||
*/
|
||||
private void updateMapMarkers(NearbyController.NearbyPlacesInfo nearbyPlacesInfo) {
|
||||
nearbyParentFragmentPresenter.updateMapMarkers(nearbyPlacesInfo);
|
||||
nearbyParentFragmentPresenter.updateMapMarkers(nearbyPlacesInfo, selectedMarker);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -362,7 +407,6 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
|
||||
/**
|
||||
* Starts animation of fab plus (turning on opening) and other FABs
|
||||
* @param isFabOpen state of FAB buttons, open when clicked on fab button, closed on other click
|
||||
*/
|
||||
@Override
|
||||
public void animateFABs() {
|
||||
|
|
@ -442,4 +486,86 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment imple
|
|||
mapFragment.getMapboxMap().animateCamera(CameraUpdateFactory.newCameraPosition(position), 1000);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initViewPositions() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void hideBottomSheet() {
|
||||
bottomSheetListBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void displayBottomSheetWithInfo(Marker marker) {
|
||||
this.selectedMarker = marker;
|
||||
NearbyMarker nearbyMarker = (NearbyMarker) marker;
|
||||
Place place = nearbyMarker.getNearbyBaseMarker().getPlace();
|
||||
passInfoToSheet(place);
|
||||
bottomSheetListBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
|
||||
bottomSheetDetailsBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
|
||||
}
|
||||
|
||||
/**
|
||||
* Same bottom sheet carries information for all nearby places, so we need to pass information
|
||||
* (title, description, distance and links) to view on nearby marker click
|
||||
* @param place Place of clicked nearby marker
|
||||
*/
|
||||
private void passInfoToSheet(Place place) {
|
||||
this.selectedPlace = place;
|
||||
updateBookmarkButtonImage(this.selectedPlace);
|
||||
|
||||
bookmarkButton.setOnClickListener(view -> {
|
||||
boolean isBookmarked = bookmarkLocationDao.updateBookmarkLocation(this.selectedPlace);
|
||||
updateBookmarkButtonImage(this.selectedPlace);
|
||||
mapFragment.updateMarker(isBookmarked, this.selectedPlace, locationManager.getLastLocation());
|
||||
});
|
||||
|
||||
|
||||
//TODO move all this buttons into a custom bottom sheet
|
||||
wikipediaButton.setVisibility(place.hasWikipediaLink()?View.VISIBLE:View.GONE);
|
||||
wikipediaButton.setOnClickListener(view -> Utils.handleWebUrl(getContext(), this.selectedPlace.siteLinks.getWikipediaLink()));
|
||||
|
||||
wikidataButton.setVisibility(place.hasWikidataLink()?View.VISIBLE:View.GONE);
|
||||
wikidataButton.setOnClickListener(view -> Utils.handleWebUrl(getContext(), this.selectedPlace.siteLinks.getWikidataLink()));
|
||||
|
||||
directionsButton.setOnClickListener(view -> Utils.handleGeoCoordinates(getActivity(), this.selectedPlace.getLocation()));
|
||||
|
||||
commonsButton.setVisibility(this.selectedPlace.hasCommonsLink()?View.VISIBLE:View.GONE);
|
||||
commonsButton.setOnClickListener(view -> Utils.handleWebUrl(getContext(), this.selectedPlace.siteLinks.getCommonsLink()));
|
||||
|
||||
icon.setImageResource(this.selectedPlace.getLabel().getIcon());
|
||||
|
||||
title.setText(this.selectedPlace.name);
|
||||
distance.setText(this.selectedPlace.distance);
|
||||
description.setText(this.selectedPlace.getLongDescription());
|
||||
|
||||
fabCamera.setOnClickListener(view -> {
|
||||
if (fabCamera.isShown()) {
|
||||
Timber.d("Camera button tapped. Place: %s", this.selectedPlace.toString());
|
||||
// TODO storeSharedPrefs();
|
||||
controller.initiateCameraPick(getActivity());
|
||||
}
|
||||
});
|
||||
|
||||
fabGallery.setOnClickListener(view -> {
|
||||
if (fabGallery.isShown()) {
|
||||
Timber.d("Gallery button tapped. Place: %s", this.selectedPlace.toString());
|
||||
//TODO storeSharedPrefs();
|
||||
controller.initiateGalleryPick(getActivity(), false);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void updateBookmarkButtonImage(Place place) {
|
||||
int bookmarkIcon;
|
||||
if (bookmarkLocationDao.findBookmarkLocation(place)) {
|
||||
bookmarkIcon = R.drawable.ic_round_star_filled_24px;
|
||||
} else {
|
||||
bookmarkIcon = R.drawable.ic_round_star_border_24px;
|
||||
}
|
||||
if (bookmarkButtonImage != null) {
|
||||
bookmarkButtonImage.setImageResource(bookmarkIcon);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package fr.free.nrw.commons.nearby;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Color;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
|
|
@ -12,7 +13,9 @@ import android.view.ViewGroup;
|
|||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
|
||||
|
||||
import com.google.android.material.bottomsheet.BottomSheetBehavior;
|
||||
import com.google.android.material.floatingactionbutton.FloatingActionButton;
|
||||
import com.mapbox.mapboxsdk.annotations.Icon;
|
||||
import com.mapbox.mapboxsdk.annotations.IconFactory;
|
||||
|
|
@ -39,9 +42,13 @@ import fr.free.nrw.commons.di.CommonsDaggerSupportFragment;
|
|||
import fr.free.nrw.commons.location.LatLng;
|
||||
import fr.free.nrw.commons.nearby.mvp.contract.NearbyMapContract;
|
||||
import fr.free.nrw.commons.nearby.mvp.contract.NearbyParentFragmentContract;
|
||||
import fr.free.nrw.commons.nearby.mvp.presenter.NearbyParentFragmentPresenter;
|
||||
import fr.free.nrw.commons.utils.LocationUtils;
|
||||
import fr.free.nrw.commons.utils.UiUtils;
|
||||
import timber.log.Timber;
|
||||
|
||||
import static fr.free.nrw.commons.utils.LengthUtils.formatDistanceBetween;
|
||||
|
||||
/**
|
||||
* Support Fragment wrapper around a map view.
|
||||
* <p>
|
||||
|
|
@ -265,7 +272,9 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment
|
|||
}
|
||||
|
||||
@Override
|
||||
public void updateMapMarkers(LatLng latLng, List<Place> placeList) {
|
||||
public void updateMapMarkers(LatLng latLng, List<Place> placeList
|
||||
, Marker selectedMarker
|
||||
, NearbyParentFragmentPresenter nearbyParentFragmentPresenter) {
|
||||
Log.d("denemeTest","updateMapMarkers, curLatng:"+latLng);
|
||||
List<NearbyBaseMarker> customBaseMarkerOptions = NearbyController
|
||||
.loadAttractionsFromLocationToBaseMarkerOptions(latLng, // Curlatlang will be used to calculate distances
|
||||
|
|
@ -281,7 +290,7 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment
|
|||
.newCameraPosition(cameraPosition), 1000);*/
|
||||
// TODO: set position depening to botom sheet position heere
|
||||
// We are trying to find nearby places around our custom searched area, thus custom parameter is nonnull
|
||||
addNearbyMarkersToMapBoxMap(customBaseMarkerOptions);
|
||||
addNearbyMarkersToMapBoxMap(customBaseMarkerOptions, selectedMarker, nearbyParentFragmentPresenter);
|
||||
// Re-enable mapbox gestures on custom location markers load
|
||||
mapboxMap.getUiSettings().setAllGesturesEnabled(true);
|
||||
updateMapToTrackPosition(latLng);
|
||||
|
|
@ -373,7 +382,9 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment
|
|||
}
|
||||
|
||||
@Override
|
||||
public void addNearbyMarkersToMapBoxMap(@Nullable List<NearbyBaseMarker> baseMarkerList) {
|
||||
public void addNearbyMarkersToMapBoxMap(@Nullable List<NearbyBaseMarker> baseMarkerList
|
||||
, Marker selectedMarker
|
||||
, NearbyParentFragmentPresenter nearbyParentFragmentPresenter) {
|
||||
Log.d("denemeTest","add markers to map");
|
||||
mapboxMap.addMarkers(baseMarkerList);
|
||||
mapboxMap.setOnInfoWindowCloseListener(marker -> {
|
||||
|
|
@ -384,27 +395,7 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment
|
|||
map.getMapAsync(mapboxMap -> {
|
||||
mapboxMap.addMarkers(baseMarkerList);
|
||||
//fabRecenter.setVisibility(View.VISIBLE);
|
||||
mapboxMap.setOnInfoWindowCloseListener(marker -> {
|
||||
/*if (marker == selected) {
|
||||
bottomSheetDetailsBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
|
||||
}*/
|
||||
});
|
||||
|
||||
mapboxMap.setOnMarkerClickListener(marker -> {
|
||||
|
||||
|
||||
if (marker instanceof NearbyMarker) {
|
||||
//this.selected = marker;
|
||||
NearbyMarker nearbyMarker = (NearbyMarker) marker;
|
||||
Place place = nearbyMarker.getNearbyBaseMarker().getPlace();
|
||||
passInfoToSheet(place);
|
||||
//bottomSheetListBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
|
||||
//bottomSheetDetailsBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
|
||||
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
setMapMarkerActions(selectedMarker, nearbyParentFragmentPresenter);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -492,5 +483,55 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment
|
|||
public void showPlaces() {
|
||||
|
||||
}
|
||||
|
||||
void setMapMarkerActions(Marker selected, NearbyParentFragmentPresenter nearbyParentFragmentPresenter) {
|
||||
getMapboxMap().setOnInfoWindowCloseListener(marker -> {
|
||||
if (marker == selected) {
|
||||
nearbyParentFragmentPresenter.markerUnselected();
|
||||
}
|
||||
});
|
||||
|
||||
getMapboxMap().setOnMarkerClickListener(marker -> {
|
||||
|
||||
if (marker instanceof NearbyMarker) {
|
||||
nearbyParentFragmentPresenter.markerSelected(marker);
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
public void updateMarker(boolean isBookmarked, Place place, LatLng curLatLng) {
|
||||
|
||||
VectorDrawableCompat vectorDrawable;
|
||||
if (isBookmarked) {
|
||||
vectorDrawable = VectorDrawableCompat.create(
|
||||
getContext().getResources(), R.drawable.ic_custom_bookmark_marker, getContext().getTheme()
|
||||
);
|
||||
} else {
|
||||
vectorDrawable = VectorDrawableCompat.create(
|
||||
getContext().getResources(), R.drawable.ic_custom_map_marker, getContext().getTheme()
|
||||
);
|
||||
}
|
||||
for (Marker marker : mapboxMap.getMarkers()) {
|
||||
if (marker.getTitle() != null && marker.getTitle().equals(place.getName())) {
|
||||
|
||||
Bitmap icon = UiUtils.getBitmap(vectorDrawable);
|
||||
String distance = formatDistanceBetween(curLatLng, place.location);
|
||||
place.setDistance(distance);
|
||||
|
||||
NearbyBaseMarker nearbyBaseMarker = new NearbyBaseMarker();
|
||||
nearbyBaseMarker.title(place.name);
|
||||
nearbyBaseMarker.position(
|
||||
new com.mapbox.mapboxsdk.geometry.LatLng(
|
||||
place.location.getLatitude(),
|
||||
place.location.getLongitude()));
|
||||
nearbyBaseMarker.place(place);
|
||||
nearbyBaseMarker.icon(IconFactory.getInstance(getContext())
|
||||
.fromBitmap(icon));
|
||||
marker.setIcon(IconFactory.getInstance(getContext()).fromBitmap(icon));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import android.view.View;
|
|||
|
||||
import com.google.android.material.floatingactionbutton.FloatingActionButton;
|
||||
import com.mapbox.mapboxsdk.annotations.BaseMarkerOptions;
|
||||
import com.mapbox.mapboxsdk.annotations.Marker;
|
||||
import com.mapbox.mapboxsdk.maps.MapView;
|
||||
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
||||
|
||||
|
|
@ -14,6 +15,7 @@ import java.util.List;
|
|||
import fr.free.nrw.commons.location.LatLng;
|
||||
import fr.free.nrw.commons.nearby.NearbyBaseMarker;
|
||||
import fr.free.nrw.commons.nearby.Place;
|
||||
import fr.free.nrw.commons.nearby.mvp.presenter.NearbyParentFragmentPresenter;
|
||||
|
||||
/**
|
||||
* This interface defines specific View and UserActions for map
|
||||
|
|
@ -27,14 +29,14 @@ public interface NearbyMapContract {
|
|||
void showSearchThisAreaButton();
|
||||
void showInformationBottomSheet();
|
||||
void initViews();
|
||||
void updateMapMarkers(LatLng latLng, List<Place> placeList);
|
||||
void updateMapMarkers(LatLng latLng, List<Place> placeList, Marker selectedMarker, NearbyParentFragmentPresenter nearbyParentFragmentPresenter);
|
||||
void updateMapToTrackPosition(LatLng curLatLng);
|
||||
void setListeners();
|
||||
MapView setupMapView(Bundle savedInstanceState);
|
||||
void addCurrentLocationMarker(LatLng curLatLng);
|
||||
void setSearchThisAreaButtonVisibility(boolean visible);
|
||||
boolean isCurrentLocationMarkerVisible();
|
||||
void addNearbyMarkersToMapBoxMap(List<NearbyBaseMarker> baseMarkerOptions);
|
||||
void addNearbyMarkersToMapBoxMap(List<NearbyBaseMarker> baseMarkerOptions, Marker marker, NearbyParentFragmentPresenter nearbyParentFragmentPresenter);
|
||||
void prepareViewsForSheetPosition();
|
||||
void hideFABs();
|
||||
void showFABs();
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package fr.free.nrw.commons.nearby.mvp.contract;
|
|||
|
||||
import android.view.View;
|
||||
|
||||
import com.mapbox.mapboxsdk.annotations.Marker;
|
||||
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
||||
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
|
|
@ -29,6 +30,9 @@ public interface NearbyParentFragmentContract {
|
|||
void setFABRecenterAction(android.view.View.OnClickListener onClickListener);
|
||||
void animateFABs();
|
||||
void recenterMap(LatLng curLatLng);
|
||||
void initViewPositions();
|
||||
void hideBottomSheet();
|
||||
void displayBottomSheetWithInfo(Marker marker);
|
||||
}
|
||||
|
||||
interface UserActions {
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior;
|
|||
import com.google.android.material.snackbar.Snackbar;
|
||||
import com.google.gson.Gson;
|
||||
import com.mapbox.mapboxsdk.Mapbox;
|
||||
import com.mapbox.mapboxsdk.annotations.Marker;
|
||||
import com.mapbox.mapboxsdk.camera.CameraPosition;
|
||||
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
||||
import com.mapbox.mapboxsdk.maps.MapboxMapOptions;
|
||||
|
|
@ -233,7 +234,7 @@ public class NearbyParentFragment extends CommonsDaggerSupportFragment
|
|||
* @param nearbyPlacesInfo This variable has place list information and distances.
|
||||
*/
|
||||
private void updateMapMarkers(NearbyController.NearbyPlacesInfo nearbyPlacesInfo) {
|
||||
nearbyParentFragmentPresenter.updateMapMarkers(nearbyPlacesInfo);
|
||||
nearbyParentFragmentPresenter.updateMapMarkers(nearbyPlacesInfo, null);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -349,6 +350,21 @@ public class NearbyParentFragment extends CommonsDaggerSupportFragment
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initViewPositions() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void hideBottomSheet() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void displayBottomSheetWithInfo(Marker marker) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNetworkConnectionEstablished() {
|
||||
return NetworkUtils.isInternetConnectionEstablished(getActivity());
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package fr.free.nrw.commons.nearby.mvp.presenter;
|
|||
import android.util.Log;
|
||||
import android.view.View;
|
||||
|
||||
import com.mapbox.mapboxsdk.annotations.Marker;
|
||||
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
||||
|
||||
import fr.free.nrw.commons.kvstore.JsonKvStore;
|
||||
|
|
@ -142,10 +143,10 @@ public class NearbyParentFragmentPresenter
|
|||
|
||||
public void initializeMapOperations() {
|
||||
Log.d("denemeTest","initializeMapOperations");
|
||||
nearbyParentFragmentView.initViewPositions();
|
||||
|
||||
lockNearby(false);
|
||||
nearbyParentFragmentView.addNetworkBroadcastReceiver();
|
||||
//TODO: NETWORK RECEIVER IS NOT ASSIGNED
|
||||
|
||||
Timber.d("Nearby map view is created and ready");
|
||||
updateMapAndList(LOCATION_SIGNIFICANTLY_CHANGED, null);
|
||||
|
|
@ -171,6 +172,16 @@ public class NearbyParentFragmentPresenter
|
|||
nearbyParentFragmentView.setFABRecenterAction(v -> {
|
||||
nearbyParentFragmentView.recenterMap(curLatLng);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public void markerUnselected() {
|
||||
nearbyParentFragmentView.hideBottomSheet();
|
||||
}
|
||||
|
||||
|
||||
public void markerSelected(Marker marker) {
|
||||
nearbyParentFragmentView.displayBottomSheetWithInfo(marker);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -269,8 +280,8 @@ public class NearbyParentFragmentPresenter
|
|||
* location where you are not at.
|
||||
* @param nearbyPlacesInfo This variable has place list information and distances.
|
||||
*/
|
||||
public void updateMapMarkers(NearbyController.NearbyPlacesInfo nearbyPlacesInfo) {
|
||||
nearbyMapFragmentView.updateMapMarkers(nearbyPlacesInfo.curLatLng, nearbyPlacesInfo.placeList);
|
||||
public void updateMapMarkers(NearbyController.NearbyPlacesInfo nearbyPlacesInfo, Marker selectedMarker) {
|
||||
nearbyMapFragmentView.updateMapMarkers(nearbyPlacesInfo.curLatLng, nearbyPlacesInfo.placeList, selectedMarker, this);
|
||||
nearbyMapFragmentView.updateMapToTrackPosition(nearbyPlacesInfo.curLatLng);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue