Skip to content

Commit ceb03a9

Browse files
Fixes commons-app#3766, Added OPENSTREET attribution (commons-app#3889)
* Fixes commons-app#3766 * Added OPENSTREET attribution in nearby * Added custom text attribution in Nearby * Deleted unused class CustomBorderTextView * review suggested changes * modified telemetry summary string
1 parent c9f16eb commit ceb03a9

File tree

3 files changed

+115
-178
lines changed

3 files changed

+115
-178
lines changed

app/src/main/java/fr/free/nrw/commons/nearby/fragments/NearbyParentFragment.java

+26-23
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
package fr.free.nrw.commons.nearby.fragments;
22

3+
import static fr.free.nrw.commons.contributions.MainActivity.CONTRIBUTIONS_TAB_POSITION;
4+
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SIGNIFICANTLY_CHANGED;
5+
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SLIGHTLY_CHANGED;
6+
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.MAP_UPDATED;
7+
import static fr.free.nrw.commons.nearby.Label.TEXT_TO_DESCRIPTION;
8+
import static fr.free.nrw.commons.utils.LengthUtils.formatDistanceBetween;
9+
import static fr.free.nrw.commons.wikidata.WikidataConstants.PLACE_OBJECT;
10+
311
import android.Manifest;
412
import android.app.AlertDialog;
513
import android.content.BroadcastReceiver;
@@ -11,6 +19,8 @@
1119
import android.graphics.Bitmap;
1220
import android.os.Bundle;
1321
import android.provider.Settings;
22+
import android.text.Html;
23+
import android.text.method.LinkMovementMethod;
1424
import android.util.Log;
1525
import android.view.Gravity;
1626
import android.view.LayoutInflater;
@@ -26,14 +36,15 @@
2636
import android.widget.SearchView;
2737
import android.widget.TextView;
2838
import android.widget.Toast;
29-
3039
import androidx.annotation.NonNull;
3140
import androidx.annotation.Nullable;
41+
import androidx.appcompat.widget.AppCompatTextView;
3242
import androidx.recyclerview.widget.DividerItemDecoration;
3343
import androidx.recyclerview.widget.LinearLayoutManager;
3444
import androidx.recyclerview.widget.RecyclerView;
3545
import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
36-
46+
import butterknife.BindView;
47+
import butterknife.ButterKnife;
3748
import com.google.android.material.bottomsheet.BottomSheetBehavior;
3849
import com.google.android.material.chip.Chip;
3950
import com.google.android.material.chip.ChipGroup;
@@ -58,17 +69,6 @@
5869
import com.mapbox.pluginscalebar.ScaleBarOptions;
5970
import com.mapbox.pluginscalebar.ScaleBarPlugin;
6071
import com.pedrogomez.renderers.RVRendererAdapter;
61-
62-
import fr.free.nrw.commons.utils.DialogUtil;
63-
import java.util.ArrayList;
64-
import java.util.List;
65-
import java.util.concurrent.TimeUnit;
66-
67-
import javax.inject.Inject;
68-
import javax.inject.Named;
69-
70-
import butterknife.BindView;
71-
import butterknife.ButterKnife;
7272
import fr.free.nrw.commons.CommonsApplication;
7373
import fr.free.nrw.commons.R;
7474
import fr.free.nrw.commons.Utils;
@@ -92,6 +92,7 @@
9292
import fr.free.nrw.commons.nearby.Place;
9393
import fr.free.nrw.commons.nearby.contract.NearbyParentFragmentContract;
9494
import fr.free.nrw.commons.nearby.presenter.NearbyParentFragmentPresenter;
95+
import fr.free.nrw.commons.utils.DialogUtil;
9596
import fr.free.nrw.commons.utils.ExecutorUtils;
9697
import fr.free.nrw.commons.utils.LayoutUtils;
9798
import fr.free.nrw.commons.utils.LocationUtils;
@@ -105,16 +106,13 @@
105106
import io.reactivex.Observable;
106107
import io.reactivex.android.schedulers.AndroidSchedulers;
107108
import io.reactivex.schedulers.Schedulers;
109+
import java.util.ArrayList;
110+
import java.util.List;
111+
import java.util.concurrent.TimeUnit;
112+
import javax.inject.Inject;
113+
import javax.inject.Named;
108114
import timber.log.Timber;
109115

110-
import static fr.free.nrw.commons.contributions.MainActivity.CONTRIBUTIONS_TAB_POSITION;
111-
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SIGNIFICANTLY_CHANGED;
112-
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SLIGHTLY_CHANGED;
113-
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.MAP_UPDATED;
114-
import static fr.free.nrw.commons.nearby.Label.TEXT_TO_DESCRIPTION;
115-
import static fr.free.nrw.commons.utils.LengthUtils.formatDistanceBetween;
116-
import static fr.free.nrw.commons.wikidata.WikidataConstants.PLACE_OBJECT;
117-
118116

119117
public class NearbyParentFragment extends CommonsDaggerSupportFragment
120118
implements NearbyParentFragmentContract.View,
@@ -154,6 +152,8 @@ public class NearbyParentFragment extends CommonsDaggerSupportFragment
154152
MapView mapView;
155153
@BindView(R.id.rv_nearby_list)
156154
RecyclerView rvNearbyList;
155+
@BindView(R.id.tv_attribution)
156+
AppCompatTextView tvAttribution;
157157

158158
@Inject LocationServiceManager locationManager;
159159
@Inject NearbyController nearbyController;
@@ -236,8 +236,8 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
236236
UiSettings uiSettings = mapBoxMap.getUiSettings();
237237
uiSettings.setCompassGravity(Gravity.BOTTOM | Gravity.LEFT);
238238
uiSettings.setCompassMargins(12, 0, 0, 24);
239-
uiSettings.setLogoEnabled(true);
240-
uiSettings.setAttributionEnabled(true);
239+
uiSettings.setLogoEnabled(false);
240+
uiSettings.setAttributionEnabled(false);
241241
uiSettings.setRotateGesturesEnabled(false);
242242
NearbyParentFragment.this.isMapBoxReady=true;
243243
performMapReadyActions();
@@ -260,6 +260,9 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
260260
scaleBarPlugin.create(scaleBarOptions);
261261
});
262262
});
263+
264+
tvAttribution.setText(Html.fromHtml(getString(R.string.map_attribution)));
265+
tvAttribution.setMovementMethod(LinkMovementMethod.getInstance());
263266
}
264267

265268
/**

app/src/main/java/fr/free/nrw/commons/settings/SettingsFragment.java

+18
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,24 @@ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
9696
});
9797
}
9898

99+
/**
100+
* Opt in or out of MapBox telemetry
101+
* @param shouldOptIn
102+
*/
103+
private void telemetryOptInOut(boolean shouldOptIn){
104+
TelemetryDefinition telemetry = Mapbox.getTelemetry();
105+
if (telemetry != null) {
106+
telemetry.setUserTelemetryRequestState(shouldOptIn);
107+
}
108+
109+
findPreference("telemetryOptOut").setOnPreferenceChangeListener(
110+
(preference, newValue) -> {
111+
telemetryOptInOut((boolean)newValue);
112+
defaultKvStore.putBoolean(Prefs.TELEMETRY_PREFERENCE,(boolean)newValue);
113+
return false;
114+
});
115+
}
116+
99117
/**
100118
* Opt in or out of MapBox telemetry
101119
* @param shouldOptIn

0 commit comments

Comments
 (0)