diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyController.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyController.java index ba2aec1d9..e5fc3182c 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyController.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyController.java @@ -2,9 +2,11 @@ package fr.free.nrw.commons.nearby; import android.content.Context; import android.content.SharedPreferences; -import android.graphics.drawable.Icon; import android.preference.PreferenceManager; +import com.mapbox.mapboxsdk.annotations.Icon; +import com.mapbox.mapboxsdk.annotations.IconFactory; + import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; @@ -13,6 +15,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import fr.free.nrw.commons.R; import fr.free.nrw.commons.location.LatLng; import timber.log.Timber; @@ -86,13 +89,17 @@ public class NearbyController { */ public static List loadAttractionsFromLocationToBaseMarkerOptions( LatLng curLatLng, - List placeList) { + List placeList, + Context context) { List baseMarkerOptionses = new ArrayList<>(); placeList = placeList.subList(0, Math.min(placeList.size(), MAX_RESULTS)); for (Place place: placeList) { String distance = formatDistanceBetween(curLatLng, place.location); place.setDistance(distance); + Icon icon = IconFactory.getInstance(context) + .fromResource(R.drawable.custom_map_marker); + NearbyBaseMarker nearbyBaseMarker = new NearbyBaseMarker(); nearbyBaseMarker.title(place.name); nearbyBaseMarker.position( @@ -100,6 +107,7 @@ public class NearbyController { place.location.latitude, place.location.longitude)); nearbyBaseMarker.place(place); + nearbyBaseMarker.icon(icon); baseMarkerOptionses.add(nearbyBaseMarker); } diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java index 77512139e..b58fa8d5b 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyMapFragment.java @@ -55,8 +55,9 @@ public class NearbyMapFragment extends android.support.v4.app.Fragment { Type curLatLngType = new TypeToken() {}.getType(); curLatLng = gson.fromJson(gsonLatLng, curLatLngType); baseMarkerOptionses = NearbyController - .loadAttractionsFromLocationToBaseMarkerOptions(curLatLng, placeList); - + .loadAttractionsFromLocationToBaseMarkerOptions(curLatLng, + placeList, + getActivity()); } Mapbox.getInstance(getActivity(), getString(R.string.mapbox_commons_app_token)); diff --git a/app/src/main/res/drawable-mdpi/custom_map_marker.png b/app/src/main/res/drawable-mdpi/custom_map_marker.png new file mode 100644 index 000000000..0634167c5 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/custom_map_marker.png differ