diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/contract/NearbyParentFragmentContract.java b/app/src/main/java/fr/free/nrw/commons/nearby/contract/NearbyParentFragmentContract.java index 23987c425..873e2e2ea 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/contract/NearbyParentFragmentContract.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/contract/NearbyParentFragmentContract.java @@ -42,6 +42,8 @@ public interface NearbyParentFragmentContract { void setCheckBoxAction(); void setCheckBoxState(int state); void setFilterState(); + void disableFABRecenter(); + void enableFABRecenter(); } interface NearbyListView { diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/fragments/NearbyParentFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/fragments/NearbyParentFragment.java index c2c317282..4391a105d 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/fragments/NearbyParentFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/fragments/NearbyParentFragment.java @@ -830,6 +830,16 @@ public class NearbyParentFragment extends CommonsDaggerSupportFragment fabRecenter.setOnClickListener(onClickListener); } + @Override + public void disableFABRecenter() { + fabRecenter.setEnabled(false); + } + + @Override + public void enableFABRecenter() { + fabRecenter.setEnabled(true); + } + @Override public void recenterMap(fr.free.nrw.commons.location.LatLng curLatLng) { nearbyMapFragment.removeCurrentLocationMarker(); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/presenter/NearbyParentFragmentPresenter.java b/app/src/main/java/fr/free/nrw/commons/nearby/presenter/NearbyParentFragmentPresenter.java index 3dd0bc0fb..5107f96e3 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/presenter/NearbyParentFragmentPresenter.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/presenter/NearbyParentFragmentPresenter.java @@ -198,6 +198,11 @@ public class NearbyParentFragmentPresenter @Override public void lockUnlockNearby(boolean isNearbyLocked) { this.isNearbyLocked = isNearbyLocked; + if (isNearbyLocked) { + nearbyParentFragmentView.disableFABRecenter(); + } else { + nearbyParentFragmentView.enableFABRecenter(); + } } public void registerUnregisterLocationListener(boolean removeLocationListener) {