From 4304e3d018cb6c45ebe6e9a2a744eb1544acf4f5 Mon Sep 17 00:00:00 2001 From: neslihanturan Date: Tue, 17 Sep 2019 11:58:49 +0300 Subject: [PATCH] Add bookmark from list fragment --- .../java/fr/free/nrw/commons/nearby/PlaceRenderer.java | 7 +++++-- .../commons/nearby/mvp/fragments/NearbyMapFragment.java | 8 +++++--- .../nearby/mvp/fragments/NearbyParentFragment.java | 4 ++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/PlaceRenderer.java b/app/src/main/java/fr/free/nrw/commons/nearby/PlaceRenderer.java index b76039059..e497224b6 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/PlaceRenderer.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/PlaceRenderer.java @@ -33,9 +33,11 @@ import fr.free.nrw.commons.bookmarks.locations.BookmarkLocationsDao; import fr.free.nrw.commons.contributions.ContributionController; import fr.free.nrw.commons.di.ApplicationlessInjection; import fr.free.nrw.commons.kvstore.JsonKvStore; +import fr.free.nrw.commons.nearby.mvp.fragments.NearbyMapFragment; import fr.free.nrw.commons.nearby.mvp.fragments.NearbyParentFragment; import timber.log.Timber; +import static fr.free.nrw.commons.nearby.mvp.fragments.NearbyParentFragment.TAG_RETAINED_MAP_FRAGMENT; import static fr.free.nrw.commons.theme.NavigationBaseActivity.startActivityWithFlags; import static fr.free.nrw.commons.wikidata.WikidataConstants.PLACE_OBJECT; @@ -191,8 +193,9 @@ public class PlaceRenderer extends Renderer { onBookmarkClick.onClick(); } else { - // TODO nesli - //((NearbyMapFragment)((NearbyFragment)((NearbyListFragment)fragment).getParentFragment()).getChildFragmentManager().findFragmentByTag(NearbyMapFragment.class.getSimpleName())).updateMarker(isBookmarked, place); + ((NearbyMapFragment)(fragment.getParentFragment()).getChildFragmentManager(). + findFragmentByTag(TAG_RETAINED_MAP_FRAGMENT)). + updateMarker(isBookmarked, place, null); } } }); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java index afceb2c84..779d3d414 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java @@ -405,7 +405,7 @@ public class NearbyMapFragment extends CommonsDaggerSupportFragment }); } - public void updateMarker(boolean isBookmarked, Place place, LatLng curLatLng) { + public void updateMarker(boolean isBookmarked, Place place, @Nullable LatLng curLatLng) { VectorDrawableCompat vectorDrawable; if (isBookmarked) { @@ -421,8 +421,10 @@ public class NearbyMapFragment extends CommonsDaggerSupportFragment if (marker.getTitle() != null && marker.getTitle().equals(place.getName())) { Bitmap icon = UiUtils.getBitmap(vectorDrawable); - String distance = formatDistanceBetween(curLatLng, place.location); - place.setDistance(distance); + if (curLatLng != null) { + String distance = formatDistanceBetween(curLatLng, place.location); + place.setDistance(distance); + } NearbyBaseMarker nearbyBaseMarker = new NearbyBaseMarker(); nearbyBaseMarker.title(place.name); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java index cd0a36974..8378eba0c 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java @@ -206,8 +206,8 @@ public class NearbyParentFragment extends CommonsDaggerSupportFragment NearbyMapFragment nearbyMapFragment; private fr.free.nrw.commons.nearby.NearbyListFragment nearbyListFragment; - private static final String TAG_RETAINED_MAP_FRAGMENT = com.mapbox.mapboxsdk.maps.SupportMapFragment.class.getSimpleName(); - private static final String TAG_RETAINED_LIST_FRAGMENT = NearbyListFragment.class.getSimpleName(); + public static final String TAG_RETAINED_MAP_FRAGMENT = NearbyMapFragment.class.getSimpleName(); + public static final String TAG_RETAINED_LIST_FRAGMENT = NearbyListFragment.class.getSimpleName(); @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,