diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
index 26bb7f4b1..ec8e07b8a 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
@@ -1,6 +1,7 @@
package fr.free.nrw.commons.contributions;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
@@ -15,6 +16,7 @@ import android.view.MenuItem;
import android.view.View;
import javax.inject.Inject;
+import javax.inject.Named;
import butterknife.BindView;
import butterknife.ButterKnife;
@@ -40,6 +42,9 @@ public class ContributionsActivity extends AuthenticatedActivity implements Frag
ViewPager viewPager;
@Inject
public LocationServiceManager locationManager;
+ @Inject
+ @Named("default_preferences")
+ public SharedPreferences prefs;
public Intent uploadServiceIntent;
diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
index cc5fc57ec..efb5d1df6 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java
@@ -472,16 +472,22 @@ public class ContributionsFragment
new UnreadNotificationsCheckAsync((ContributionsActivity) getActivity(), notificationController).execute();
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
- if (((ContributionsActivity)getActivity()).locationManager.isLocationPermissionGranted()) {
- // Display nearest location, first listen
- nearbyNoificationCardView.displayPermissionRequestButton(false);
+ if (prefs.getBoolean("displayNearbyCardView", true)) {
+ nearbyNoificationCardView.setVisibility(View.VISIBLE);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+ if (((ContributionsActivity)getActivity()).locationManager.isLocationPermissionGranted()) {
+ // Display nearest location, first listen
+ nearbyNoificationCardView.displayPermissionRequestButton(false);
- } else {
- // Display tab to see button, since permission is not granted and you have to grant it first
- nearbyNoificationCardView.displayPermissionRequestButton(true);
+ } else {
+ // Display tab to see button, since permission is not granted and you have to grant it first
+ nearbyNoificationCardView.displayPermissionRequestButton(true);
+ }
}
+ } else {
+ nearbyNoificationCardView.setVisibility(View.GONE);
}
+
}
@Override
diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyNoificationCardView.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyNoificationCardView.java
index 97105bb61..d6a093c9e 100644
--- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyNoificationCardView.java
+++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyNoificationCardView.java
@@ -1,6 +1,8 @@
package fr.free.nrw.commons.nearby;
import android.content.Context;
+import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.CoordinatorLayout;
@@ -19,6 +21,9 @@ import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
+import javax.inject.Inject;
+import javax.inject.Named;
+
import fr.free.nrw.commons.R;
import fr.free.nrw.commons.contributions.ContributionsActivity;
import fr.free.nrw.commons.contributions.ContributionsFragment;
@@ -83,8 +88,8 @@ public class NearbyNoificationCardView extends CardView{
* make view invisible at all.
*/
NearbyNoificationCardView.this.setVisibility(GONE);
-
// Save shared preference for nearby card view accordingly
+ ((ContributionsActivity) context).prefs.edit().putBoolean("displayNearbyCardView", false).apply();
}
@Override
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e7b56a1fe..805eb11a7 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -355,4 +355,7 @@
Contributions
Nearby
+ Display nearby notification
+ Display closest wikidata item needs an image, above contribution list
+
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 37b6a8b01..0af4d50c6 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -36,6 +36,12 @@
android:inputType="numberDecimal"
android:maxLength="3" />
+
+