diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java index d4d6519bd..31e96e0b3 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyAdapterFactory.java @@ -1,5 +1,7 @@ package fr.free.nrw.commons.nearby; +import android.support.v4.app.Fragment; + import com.pedrogomez.renderers.ListAdapteeCollection; import com.pedrogomez.renderers.RVRendererAdapter; import com.pedrogomez.renderers.RendererBuilder; @@ -9,13 +11,19 @@ import java.util.List; class NearbyAdapterFactory { + private Fragment fragment; + NearbyAdapterFactory(){ } + NearbyAdapterFactory(Fragment fragment) { + this.fragment = fragment; + } + public RVRendererAdapter create(List placeList) { RendererBuilder builder = new RendererBuilder() - .bind(Place.class, new PlaceRenderer()); + .bind(Place.class, new PlaceRenderer(fragment)); ListAdapteeCollection collection = new ListAdapteeCollection<>( placeList != null ? placeList : Collections.emptyList()); return new RVRendererAdapter<>(builder, collection); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java index b05219de7..211f03628 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java @@ -56,7 +56,7 @@ public class NearbyListFragment extends DaggerFragment { View view = inflater.inflate(R.layout.fragment_nearby, container, false); recyclerView = view.findViewById(R.id.listView); recyclerView.setLayoutManager(new LinearLayoutManager(getContext())); - adapterFactory = new NearbyAdapterFactory(); + adapterFactory = new NearbyAdapterFactory(this); return view; } 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 213e6a624..f8a6f84e5 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 @@ -3,6 +3,7 @@ package fr.free.nrw.commons.nearby; import android.content.Intent; import android.net.Uri; import android.support.transition.TransitionManager; +import android.support.v4.app.Fragment; import android.support.v7.widget.PopupMenu; import android.util.Log; import android.view.LayoutInflater; @@ -42,12 +43,18 @@ class PlaceRenderer extends Renderer { private View view; private static ArrayList openedItems; private Place place; + private Fragment fragment; PlaceRenderer(){ openedItems = new ArrayList<>(); } + PlaceRenderer(Fragment fragment) { + this.fragment = fragment; + openedItems = new ArrayList<>(); + } + @Override protected View inflate(LayoutInflater layoutInflater, ViewGroup viewGroup) { view = layoutInflater.inflate(R.layout.item_place, viewGroup, false);