diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/Label.java b/app/src/main/java/fr/free/nrw/commons/nearby/Label.java index 3be483845..4f104771b 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/Label.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/Label.java @@ -54,6 +54,7 @@ public enum Label { private final String text; @DrawableRes private final int icon; + private boolean selected; Label(String text, @DrawableRes int icon) { this.text = text; @@ -65,6 +66,14 @@ public enum Label { this.icon = in.readInt(); } + public void setSelected(boolean isSelected) { + this.selected = isSelected; + } + + public boolean isSelected() { + return selected; + } + public String getText() { return text; } diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/MarkerPlaceGroup.java b/app/src/main/java/fr/free/nrw/commons/nearby/MarkerPlaceGroup.java new file mode 100644 index 000000000..8ec8ac76e --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/nearby/MarkerPlaceGroup.java @@ -0,0 +1,27 @@ +package fr.free.nrw.commons.nearby; + +import com.mapbox.mapboxsdk.annotations.Marker; + +public class MarkerPlaceGroup { + private Marker marker; + private boolean isBookmarked; + private Place place; + + public MarkerPlaceGroup(Marker marker, boolean isBookmarked, Place place) { + this.marker = marker; + this.isBookmarked = isBookmarked; + this.place = place; + } + + public Marker getMarker() { + return marker; + } + + public Place getPlace() { + return place; + } + + public boolean getIsBookmarked() { + return isBookmarked; + } +} \ No newline at end of file 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 6835cedb7..d2c1ec577 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 @@ -34,7 +34,7 @@ public class NearbyController { public static LatLng latestSearchLocation; // Can be current and camera target on search this area button is used public static double latestSearchRadius = 10.0; // Any last search radius except closest result search - public static Map markerLabelMap; + public static List markerLabelList = new ArrayList<>(); public static Map markerExistsMap; public static Map markerNeedPicMap; diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFilterSearchRecyclerViewAdapter.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFilterSearchRecyclerViewAdapter.java index a41c3df43..45fe5e83b 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFilterSearchRecyclerViewAdapter.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFilterSearchRecyclerViewAdapter.java @@ -1,12 +1,14 @@ package fr.free.nrw.commons.nearby; import android.content.Context; +import android.graphics.Color; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Filter; import android.widget.Filterable; import android.widget.ImageView; +import android.widget.LinearLayout; import android.widget.TextView; import androidx.annotation.NonNull; @@ -15,6 +17,7 @@ import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; import fr.free.nrw.commons.R; +import fr.free.nrw.commons.nearby.presenter.NearbyParentFragmentPresenter; public class NearbyFilterSearchRecyclerViewAdapter extends RecyclerView.Adapter @@ -24,6 +27,7 @@ public class NearbyFilterSearchRecyclerViewAdapter private Context context; private ArrayList