summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationContainer.java1
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java42
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AttributionDialogManager.java17
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java2
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/IconManager.java17
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java10
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java5
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java98
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java2
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java24
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java13
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java38
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MarkerContainer.java7
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Markers.java1
-rwxr-xr-xplatform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java79
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolygonContainer.java4
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolylineContainer.java4
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java1
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/ShapeAnnotationContainer.java5
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java3
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java14
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/UiSettings.java19
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java5
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/egl/EGLConfigChooser.java6
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java2
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewRenderThread.java8
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java8
27 files changed, 297 insertions, 138 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationContainer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationContainer.java
index 939fadc9c2..4612d7d941 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationContainer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationContainer.java
@@ -27,6 +27,7 @@ class AnnotationContainer implements Annotations {
return annotations.get(id);
}
+ @NonNull
@Override
public List<Annotation> obtainAll() {
List<Annotation> annotations = new ArrayList<>();
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java
index 8ebc2beba2..958ceb352c 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AnnotationManager.java
@@ -42,6 +42,7 @@ class AnnotationManager {
private static final long NO_ANNOTATION_ID = -1;
+ @Nullable
private final MapView mapView;
private final IconManager iconManager;
private final InfoWindowManager infoWindowManager = new InfoWindowManager();
@@ -50,8 +51,11 @@ class AnnotationManager {
private final List<Marker> selectedMarkers = new ArrayList<>();
private MapboxMap mapboxMap;
+ @Nullable
private MapboxMap.OnMarkerClickListener onMarkerClickListener;
+ @Nullable
private MapboxMap.OnPolygonClickListener onPolygonClickListener;
+ @Nullable
private MapboxMap.OnPolylineClickListener onPolylineClickListener;
private Annotations annotations;
@@ -60,7 +64,7 @@ class AnnotationManager {
private Polygons polygons;
private Polylines polylines;
- AnnotationManager(MapView mapView, LongSparseArray<Annotation> annotationsArray,
+ AnnotationManager(@Nullable MapView mapView, LongSparseArray<Annotation> annotationsArray,
MarkerViewManager markerViewManager, IconManager iconManager, Annotations annotations,
Markers markers, Polygons polygons, Polylines polylines, ShapeAnnotations shapeAnnotations) {
this.mapView = mapView;
@@ -80,6 +84,7 @@ class AnnotationManager {
// TODO refactor MapboxMap out for Projection and Transform
// Requires removing MapboxMap from Annotations by using Peer model from #6912
+ @NonNull
AnnotationManager bind(MapboxMap mapboxMap) {
this.mapboxMap = mapboxMap;
this.markerViewManager.bind(mapboxMap);
@@ -224,7 +229,7 @@ class AnnotationManager {
return polygons.addBy(polygonOptionsList, mapboxMap);
}
- void updatePolygon(Polygon polygon) {
+ void updatePolygon(@NonNull Polygon polygon) {
if (!isAddedToMap(polygon)) {
logNonAdded(polygon);
return;
@@ -248,7 +253,7 @@ class AnnotationManager {
return polylines.addBy(polylineOptionsList, mapboxMap);
}
- void updatePolyline(Polyline polyline) {
+ void updatePolyline(@NonNull Polyline polyline) {
if (!isAddedToMap(polyline)) {
logNonAdded(polyline);
return;
@@ -333,10 +338,12 @@ class AnnotationManager {
selectedMarkers.remove(marker);
}
+ @NonNull
List<Marker> getSelectedMarkers() {
return selectedMarkers;
}
+ @NonNull
InfoWindowManager getInfoWindowManager() {
return infoWindowManager;
}
@@ -345,7 +352,7 @@ class AnnotationManager {
return markerViewManager;
}
- void adjustTopOffsetPixels(MapboxMap mapboxMap) {
+ void adjustTopOffsetPixels(@NonNull MapboxMap mapboxMap) {
int count = annotationsArray.size();
for (int i = 0; i < count; i++) {
Annotation annotation = annotationsArray.get(i);
@@ -364,11 +371,11 @@ class AnnotationManager {
}
}
- private boolean isAddedToMap(Annotation annotation) {
+ private boolean isAddedToMap(@Nullable Annotation annotation) {
return annotation != null && annotation.getId() != -1 && annotationsArray.indexOfKey(annotation.getId()) > -1;
}
- private void logNonAdded(Annotation annotation) {
+ private void logNonAdded(@NonNull Annotation annotation) {
Logger.w(TAG, String.format(
"Attempting to update non-added %s with value %s", annotation.getClass().getCanonicalName(), annotation)
);
@@ -378,7 +385,7 @@ class AnnotationManager {
// Click event
//
- boolean onTap(PointF tapPoint) {
+ boolean onTap(@NonNull PointF tapPoint) {
MarkerHit markerHit = getMarkerHitFromTouchArea(tapPoint);
long markerId = new MarkerHitResolver(mapboxMap).execute(markerHit);
if (markerId != NO_ANNOTATION_ID) {
@@ -440,11 +447,11 @@ class AnnotationManager {
return true;
}
- private boolean onClickMarker(Marker marker) {
+ private boolean onClickMarker(@NonNull Marker marker) {
return onMarkerClickListener != null && onMarkerClickListener.onMarkerClick(marker);
}
- private void toggleMarkerSelectionState(Marker marker) {
+ private void toggleMarkerSelectionState(@NonNull Marker marker) {
if (!selectedMarkers.contains(marker)) {
selectMarker(marker);
} else {
@@ -460,7 +467,8 @@ class AnnotationManager {
this.shapeAnnotations = shapeAnnotations;
}
- public Annotation execute(ShapeAnnotationHit shapeHit) {
+ @Nullable
+ public Annotation execute(@NonNull ShapeAnnotationHit shapeHit) {
Annotation foundAnnotation = null;
List<Annotation> annotations = shapeAnnotations.obtainAllIn(shapeHit.tapPoint);
if (annotations.size() > 0) {
@@ -472,18 +480,24 @@ class AnnotationManager {
private static class MarkerHitResolver {
+ @NonNull
private final MarkerViewManager markerViewManager;
+ @NonNull
private final Projection projection;
private final int minimalTouchSize;
+ @Nullable
private View view;
private Bitmap bitmap;
private int bitmapWidth;
private int bitmapHeight;
private PointF markerLocation;
+ @NonNull
private Rect hitRectView = new Rect();
+ @NonNull
private RectF hitRectMarker = new RectF();
+ @NonNull
private RectF highestSurfaceIntersection = new RectF();
private long closestMarkerId = NO_ANNOTATION_ID;
@@ -494,7 +508,7 @@ class AnnotationManager {
this.minimalTouchSize = (int) (32 * Mapbox.getApplicationContext().getResources().getDisplayMetrics().density);
}
- public long execute(MarkerHit markerHit) {
+ public long execute(@NonNull MarkerHit markerHit) {
resolveForMarkers(markerHit);
return closestMarkerId;
}
@@ -509,7 +523,7 @@ class AnnotationManager {
}
}
- private void resolveForMarkerView(MarkerHit markerHit, MarkerView markerView) {
+ private void resolveForMarkerView(@NonNull MarkerHit markerHit, @NonNull MarkerView markerView) {
view = markerViewManager.getView(markerView);
if (view != null) {
view.getHitRect(hitRectView);
@@ -518,7 +532,7 @@ class AnnotationManager {
}
}
- private void resolveForMarker(MarkerHit markerHit, Marker marker) {
+ private void resolveForMarker(@NonNull MarkerHit markerHit, Marker marker) {
markerLocation = projection.toScreenLocation(marker.getPosition());
bitmap = marker.getIcon().getBitmap();
@@ -540,7 +554,7 @@ class AnnotationManager {
hitTestMarker(markerHit, marker, hitRectMarker);
}
- private void hitTestMarker(MarkerHit markerHit, Marker marker, RectF hitRectMarker) {
+ private void hitTestMarker(MarkerHit markerHit, @NonNull Marker marker, RectF hitRectMarker) {
if (hitRectMarker.contains(markerHit.getTapPointX(), markerHit.getTapPointY())) {
hitRectMarker.intersect(markerHit.tapRect);
if (isRectangleHighestSurfaceIntersection(hitRectMarker)) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AttributionDialogManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AttributionDialogManager.java
index 5cba2109e2..f849dc7f15 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AttributionDialogManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/AttributionDialogManager.java
@@ -8,6 +8,7 @@ import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Toast;
@@ -40,7 +41,9 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
private static final String MAP_FEEDBACK_URL = "https://www.mapbox.com/map-feedback";
private static final String MAP_FEEDBACK_LOCATION_FORMAT = MAP_FEEDBACK_URL + "/#/%f/%f/%d";
+ @NonNull
private final Context context;
+ @NonNull
private final MapboxMap mapboxMap;
private Set<Attribution> attributionSet;
@@ -51,7 +54,7 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
// Called when someone presses the attribution icon on the map
@Override
- public void onClick(View view) {
+ public void onClick(@NonNull View view) {
attributionSet = new AttributionBuilder(mapboxMap, view.getContext()).build();
boolean isActivityFinishing = false;
@@ -66,7 +69,7 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
}
}
- protected void showAttributionDialog(String[] attributionTitles) {
+ protected void showAttributionDialog(@NonNull String[] attributionTitles) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(R.string.mapbox_attributionsDialogTitle);
builder.setAdapter(new ArrayAdapter<>(context, R.layout.mapbox_attribution_list_item, attributionTitles), this);
@@ -101,7 +104,7 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
builder.setMessage(R.string.mapbox_attributionTelemetryMessage);
builder.setPositiveButton(R.string.mapbox_attributionTelemetryPositive, new DialogInterface.OnClickListener() {
@Override
- public void onClick(DialogInterface dialog, int which) {
+ public void onClick(@NonNull DialogInterface dialog, int which) {
TelemetryDefinition telemetry = Mapbox.getTelemetry();
if (telemetry != null) {
telemetry.setUserTelemetryRequestState(true);
@@ -111,14 +114,14 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
});
builder.setNeutralButton(R.string.mapbox_attributionTelemetryNeutral, new DialogInterface.OnClickListener() {
@Override
- public void onClick(DialogInterface dialog, int which) {
+ public void onClick(@NonNull DialogInterface dialog, int which) {
showWebPage(context.getResources().getString(R.string.mapbox_telemetryLink));
dialog.cancel();
}
});
builder.setNegativeButton(R.string.mapbox_attributionTelemetryNegative, new DialogInterface.OnClickListener() {
@Override
- public void onClick(DialogInterface dialog, int which) {
+ public void onClick(@NonNull DialogInterface dialog, int which) {
TelemetryDefinition telemetry = Mapbox.getTelemetry();
if (telemetry != null) {
telemetry.setUserTelemetryRequestState(false);
@@ -138,7 +141,8 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
showWebPage(url);
}
- private String buildMapFeedbackMapUrl(CameraPosition cameraPosition) {
+ @NonNull
+ private String buildMapFeedbackMapUrl(@Nullable CameraPosition cameraPosition) {
// appends current location to the map feedback url if available
return cameraPosition != null ? String.format(Locale.getDefault(),
MAP_FEEDBACK_LOCATION_FORMAT, cameraPosition.target.getLongitude(), cameraPosition.target.getLatitude(),
@@ -160,6 +164,7 @@ public class AttributionDialogManager implements View.OnClickListener, DialogInt
private static class AttributionBuilder {
private final MapboxMap mapboxMap;
+ @NonNull
private final WeakReference<Context> context;
AttributionBuilder(MapboxMap mapboxMap, Context context) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java
index e5b8722ca8..b3472ac81e 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/CameraChangeDispatcher.java
@@ -152,7 +152,7 @@ class CameraChangeDispatcher implements MapboxMap.OnCameraMoveStartedListener, M
}
@Override
- public void handleMessage(Message msg) {
+ public void handleMessage(@NonNull Message msg) {
CameraChangeDispatcher dispatcher = dispatcherWeakReference.get();
if (dispatcher != null) {
switch (msg.what) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/IconManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/IconManager.java
index 80ffa973e7..7aca93fe2e 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/IconManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/IconManager.java
@@ -2,6 +2,7 @@ package com.mapbox.mapboxsdk.maps;
import android.graphics.Bitmap;
+import android.support.annotation.NonNull;
import com.mapbox.mapboxsdk.Mapbox;
import com.mapbox.mapboxsdk.annotations.Icon;
import com.mapbox.mapboxsdk.annotations.IconFactory;
@@ -37,7 +38,7 @@ class IconManager {
loadIcon(IconFactory.recreate(IconFactory.ICON_MARKERVIEW_ID, IconFactory.ICON_MARKERVIEW_BITMAP));
}
- Icon loadIconForMarker(Marker marker) {
+ Icon loadIconForMarker(@NonNull Marker marker) {
Icon icon = marker.getIcon();
if (icon == null) {
// TODO replace with anchor implementation, we are faking an anchor by adding extra pixels and diving height by 2
@@ -50,14 +51,14 @@ class IconManager {
return icon;
}
- void loadIconForMarkerView(MarkerView marker) {
+ void loadIconForMarkerView(@NonNull MarkerView marker) {
Icon icon = marker.getIcon();
Bitmap bitmap = icon.getBitmap();
updateHighestIconSize(bitmap);
addIcon(icon, false);
}
- int getTopOffsetPixelsForIcon(Icon icon) {
+ int getTopOffsetPixelsForIcon(@NonNull Icon icon) {
return (int) (nativeMapView.getTopOffsetPixelsForAnnotationSymbol(icon.getId()) * nativeMapView.getPixelRatio());
}
@@ -77,11 +78,11 @@ class IconManager {
return icon;
}
- private void addIcon(Icon icon) {
+ private void addIcon(@NonNull Icon icon) {
addIcon(icon, true);
}
- private void addIcon(Icon icon, boolean addIconToMap) {
+ private void addIcon(@NonNull Icon icon, boolean addIconToMap) {
if (!iconMap.keySet().contains(icon)) {
iconMap.put(icon, 1);
if (addIconToMap) {
@@ -125,7 +126,7 @@ class IconManager {
}
}
- void ensureIconLoaded(Marker marker, MapboxMap mapboxMap) {
+ void ensureIconLoaded(@NonNull Marker marker, @NonNull MapboxMap mapboxMap) {
Icon icon = marker.getIcon();
if (icon == null) {
icon = loadDefaultIconForMarker(marker);
@@ -134,7 +135,7 @@ class IconManager {
setTopOffsetPixels(marker, mapboxMap, icon);
}
- private void setTopOffsetPixels(Marker marker, MapboxMap mapboxMap, Icon icon) {
+ private void setTopOffsetPixels(Marker marker, @NonNull MapboxMap mapboxMap, @NonNull Icon icon) {
// this seems to be a costly operation according to the profiler so I'm trying to save some calls
Marker previousMarker = marker.getId() != -1 ? (Marker) mapboxMap.getAnnotation(marker.getId()) : null;
if (previousMarker == null || previousMarker.getIcon() == null || previousMarker.getIcon() != marker.getIcon()) {
@@ -142,7 +143,7 @@ class IconManager {
}
}
- void iconCleanup(Icon icon) {
+ void iconCleanup(@NonNull Icon icon) {
Integer refCounter = iconMap.get(icon);
if (refCounter != null) {
refCounter--;
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java
index af207204d9..434244a7c1 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/InfoWindowManager.java
@@ -23,11 +23,15 @@ class InfoWindowManager {
private final List<InfoWindow> infoWindows = new ArrayList<>();
+ @Nullable
private MapboxMap.InfoWindowAdapter infoWindowAdapter;
private boolean allowConcurrentMultipleInfoWindows;
+ @Nullable
private MapboxMap.OnInfoWindowClickListener onInfoWindowClickListener;
+ @Nullable
private MapboxMap.OnInfoWindowLongClickListener onInfoWindowLongClickListener;
+ @Nullable
private MapboxMap.OnInfoWindowCloseListener onInfoWindowCloseListener;
void update() {
@@ -42,6 +46,7 @@ class InfoWindowManager {
this.infoWindowAdapter = infoWindowAdapter;
}
+ @Nullable
MapboxMap.InfoWindowAdapter getInfoWindowAdapter() {
return infoWindowAdapter;
}
@@ -54,7 +59,7 @@ class InfoWindowManager {
return allowConcurrentMultipleInfoWindows;
}
- boolean isInfoWindowValidForMarker(Marker marker) {
+ boolean isInfoWindowValidForMarker(@Nullable Marker marker) {
return marker != null && (!TextUtils.isEmpty(marker.getTitle()) || !TextUtils.isEmpty(marker.getSnippet()));
}
@@ -62,6 +67,7 @@ class InfoWindowManager {
onInfoWindowClickListener = listener;
}
+ @Nullable
MapboxMap.OnInfoWindowClickListener getOnInfoWindowClickListener() {
return onInfoWindowClickListener;
}
@@ -70,6 +76,7 @@ class InfoWindowManager {
onInfoWindowLongClickListener = listener;
}
+ @Nullable
MapboxMap.OnInfoWindowLongClickListener getOnInfoWindowLongClickListener() {
return onInfoWindowLongClickListener;
}
@@ -78,6 +85,7 @@ class InfoWindowManager {
onInfoWindowCloseListener = listener;
}
+ @Nullable
MapboxMap.OnInfoWindowCloseListener getOnInfoWindowCloseListener() {
return onInfoWindowCloseListener;
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java
index 17670abd09..5a5b2219e1 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapFragment.java
@@ -51,6 +51,7 @@ public final class MapFragment extends Fragment implements OnMapReadyCallback {
* @param mapboxMapOptions The configuration options to be used.
* @return MapFragment instantiated.
*/
+ @NonNull
public static MapFragment newInstance(@Nullable MapboxMapOptions mapboxMapOptions) {
MapFragment mapFragment = new MapFragment();
mapFragment.setArguments(MapFragmentUtils.createFragmentArgs(mapboxMapOptions));
@@ -65,7 +66,7 @@ public final class MapFragment extends Fragment implements OnMapReadyCallback {
* @param savedInstanceState The saved instance state for the map fragment.
*/
@Override
- public void onInflate(Context context, AttributeSet attrs, Bundle savedInstanceState) {
+ public void onInflate(@NonNull Context context, AttributeSet attrs, Bundle savedInstanceState) {
super.onInflate(context, attrs, savedInstanceState);
setArguments(MapFragmentUtils.createFragmentArgs(MapboxMapOptions.createFromAttributes(context, attrs)));
}
@@ -92,7 +93,7 @@ public final class MapFragment extends Fragment implements OnMapReadyCallback {
* @return The view created
*/
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
Context context = inflater.getContext();
map = new MapView(context, MapFragmentUtils.resolveArgs(context, getArguments()));
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java
index d82eec45ea..ec2b238ff4 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java
@@ -6,6 +6,7 @@ import android.animation.ValueAnimator;
import android.content.Context;
import android.graphics.PointF;
import android.os.Handler;
+import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.InputDevice;
import android.view.MotionEvent;
@@ -72,6 +73,7 @@ final class MapGestureDetector {
/**
* User-set focal point.
*/
+ @Nullable
private PointF focalPoint;
private AndroidGesturesManager gesturesManager;
@@ -85,9 +87,10 @@ final class MapGestureDetector {
* Cancels scheduled velocity animations if user doesn't lift fingers within
* {@link MapboxConstants#SCHEDULED_ANIMATION_TIMEOUT}
*/
+ @NonNull
private Handler animationsTimeoutHandler = new Handler();
- MapGestureDetector(Context context, Transform transform, Projection projection, UiSettings uiSettings,
+ MapGestureDetector(@Nullable Context context, Transform transform, Projection projection, UiSettings uiSettings,
AnnotationManager annotationManager, CameraChangeDispatcher cameraChangeDispatcher) {
this.annotationManager = annotationManager;
this.transform = transform;
@@ -106,7 +109,7 @@ final class MapGestureDetector {
}
}
- private void initializeGestureListeners(Context context, boolean attachDefaultListeners) {
+ private void initializeGestureListeners(@NonNull Context context, boolean attachDefaultListeners) {
if (attachDefaultListeners) {
StandardGestureListener standardGestureListener = new StandardGestureListener();
MoveGestureListener moveGestureListener = new MoveGestureListener();
@@ -128,7 +131,7 @@ final class MapGestureDetector {
}
}
- private void initializeGesturesManager(AndroidGesturesManager androidGesturesManager,
+ private void initializeGesturesManager(@NonNull AndroidGesturesManager androidGesturesManager,
boolean setDefaultMutuallyExclusives) {
if (setDefaultMutuallyExclusives) {
Set<Integer> shoveScaleSet = new HashSet<>();
@@ -158,7 +161,7 @@ final class MapGestureDetector {
*
* @param focalPoint the center point for gestures
*/
- void setFocalPoint(PointF focalPoint) {
+ void setFocalPoint(@Nullable PointF focalPoint) {
if (focalPoint == null) {
// resetting focal point,
if (uiSettings.getFocalPoint() != null) {
@@ -193,7 +196,7 @@ final class MapGestureDetector {
* @param motionEvent the MotionEvent
* @return True if touch event is handled
*/
- boolean onTouchEvent(MotionEvent motionEvent) {
+ boolean onTouchEvent(@Nullable MotionEvent motionEvent) {
// Framework can return null motion events in edge cases #9432
if (motionEvent == null) {
return false;
@@ -244,7 +247,7 @@ final class MapGestureDetector {
dispatchCameraIdle();
}
- private void cancelAnimator(Animator animator) {
+ private void cancelAnimator(@Nullable Animator animator) {
if (animator != null && animator.isStarted()) {
animator.cancel();
}
@@ -253,6 +256,7 @@ final class MapGestureDetector {
/**
* Posted on main thread with {@link #animationsTimeoutHandler}. Cancels all scheduled animators if needed.
*/
+ @NonNull
private Runnable cancelAnimatorsRunnable = new Runnable() {
@Override
public void run() {
@@ -427,7 +431,7 @@ final class MapGestureDetector {
private final class MoveGestureListener extends MoveGestureDetector.SimpleOnMoveGestureListener {
@Override
- public boolean onMoveBegin(MoveGestureDetector detector) {
+ public boolean onMoveBegin(@NonNull MoveGestureDetector detector) {
if (!uiSettings.isScrollGesturesEnabled()) {
return false;
}
@@ -439,7 +443,7 @@ final class MapGestureDetector {
}
@Override
- public boolean onMove(MoveGestureDetector detector, float distanceX, float distanceY) {
+ public boolean onMove(@NonNull MoveGestureDetector detector, float distanceX, float distanceY) {
// first move event is often delivered with no displacement
if (distanceX != 0 || distanceY != 0) {
// dispatching camera start event only when the movement actually occurred
@@ -454,7 +458,7 @@ final class MapGestureDetector {
}
@Override
- public void onMoveEnd(MoveGestureDetector detector, float velocityX, float velocityY) {
+ public void onMoveEnd(@NonNull MoveGestureDetector detector, float velocityX, float velocityY) {
dispatchCameraIdle();
notifyOnMoveEndListeners(detector);
}
@@ -464,6 +468,7 @@ final class MapGestureDetector {
private final float minimumVelocity;
+ @Nullable
private PointF scaleFocalPoint;
private boolean quickZoom;
@@ -472,7 +477,7 @@ final class MapGestureDetector {
}
@Override
- public boolean onScaleBegin(StandardScaleGestureDetector detector) {
+ public boolean onScaleBegin(@NonNull StandardScaleGestureDetector detector) {
if (!uiSettings.isZoomGesturesEnabled()) {
return false;
}
@@ -505,7 +510,7 @@ final class MapGestureDetector {
}
@Override
- public boolean onScale(StandardScaleGestureDetector detector) {
+ public boolean onScale(@NonNull StandardScaleGestureDetector detector) {
// dispatching camera start event only when the movement actually occurred
cameraChangeDispatcher.onCameraMoveStarted(CameraChangeDispatcher.REASON_API_GESTURE);
@@ -521,7 +526,7 @@ final class MapGestureDetector {
}
@Override
- public void onScaleEnd(StandardScaleGestureDetector detector, float velocityX, float velocityY) {
+ public void onScaleEnd(@NonNull StandardScaleGestureDetector detector, float velocityX, float velocityY) {
if (quickZoom) {
//if quickzoom, re-enabling move gesture detector
gesturesManager.getMoveGestureDetector().setEnabled(true);
@@ -551,7 +556,7 @@ final class MapGestureDetector {
scheduleAnimator(scaleAnimator);
}
- private void setScaleFocalPoint(StandardScaleGestureDetector detector) {
+ private void setScaleFocalPoint(@NonNull StandardScaleGestureDetector detector) {
if (focalPoint != null) {
// around user provided focal point
scaleFocalPoint = focalPoint;
@@ -587,6 +592,7 @@ final class MapGestureDetector {
}
private final class RotateGestureListener extends RotateGestureDetector.SimpleOnRotateGestureListener {
+ @Nullable
private PointF rotateFocalPoint;
private final float minimumScaleSpanWhenRotating;
private final float minimumAngularVelocity;
@@ -600,7 +606,7 @@ final class MapGestureDetector {
}
@Override
- public boolean onRotateBegin(RotateGestureDetector detector) {
+ public boolean onRotateBegin(@NonNull RotateGestureDetector detector) {
if (!uiSettings.isRotateGesturesEnabled()) {
return false;
}
@@ -625,7 +631,7 @@ final class MapGestureDetector {
}
@Override
- public boolean onRotate(RotateGestureDetector detector, float rotationDegreesSinceLast,
+ public boolean onRotate(@NonNull RotateGestureDetector detector, float rotationDegreesSinceLast,
float rotationDegreesSinceFirst) {
// dispatching camera start event only when the movement actually occurred
cameraChangeDispatcher.onCameraMoveStarted(CameraChangeDispatcher.REASON_API_GESTURE);
@@ -644,7 +650,8 @@ final class MapGestureDetector {
}
@Override
- public void onRotateEnd(RotateGestureDetector detector, float velocityX, float velocityY, float angularVelocity) {
+ public void onRotateEnd(@NonNull RotateGestureDetector detector, float velocityX,
+ float velocityY, float angularVelocity) {
if (uiSettings.isIncreaseScaleThresholdWhenRotating()) {
// resetting default scale threshold values
gesturesManager.getStandardScaleGestureDetector().setSpanSinceStartThreshold(defaultSpanSinceStartThreshold);
@@ -673,7 +680,7 @@ final class MapGestureDetector {
scheduleAnimator(rotateAnimator);
}
- private void setRotateFocalPoint(RotateGestureDetector detector) {
+ private void setRotateFocalPoint(@NonNull RotateGestureDetector detector) {
if (focalPoint != null) {
// User provided focal point
rotateFocalPoint = focalPoint;
@@ -689,7 +696,7 @@ final class MapGestureDetector {
animator.setInterpolator(new DecelerateInterpolator());
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
- public void onAnimationUpdate(ValueAnimator animation) {
+ public void onAnimationUpdate(@NonNull ValueAnimator animation) {
transform.setBearing(
transform.getRawBearing() + (float) animation.getAnimatedValue(),
rotateFocalPoint.x, rotateFocalPoint.y,
@@ -723,7 +730,7 @@ final class MapGestureDetector {
private final class ShoveGestureListener extends ShoveGestureDetector.SimpleOnShoveGestureListener {
@Override
- public boolean onShoveBegin(ShoveGestureDetector detector) {
+ public boolean onShoveBegin(@NonNull ShoveGestureDetector detector) {
if (!uiSettings.isTiltGesturesEnabled()) {
return false;
}
@@ -741,7 +748,8 @@ final class MapGestureDetector {
}
@Override
- public boolean onShove(ShoveGestureDetector detector, float deltaPixelsSinceLast, float deltaPixelsSinceStart) {
+ public boolean onShove(@NonNull ShoveGestureDetector detector,
+ float deltaPixelsSinceLast, float deltaPixelsSinceStart) {
// dispatching camera start event only when the movement actually occurred
cameraChangeDispatcher.onCameraMoveStarted(CameraChangeDispatcher.REASON_API_GESTURE);
@@ -759,7 +767,7 @@ final class MapGestureDetector {
}
@Override
- public void onShoveEnd(ShoveGestureDetector detector, float velocityX, float velocityY) {
+ public void onShoveEnd(@NonNull ShoveGestureDetector detector, float velocityX, float velocityY) {
dispatchCameraIdle();
// re-enabling move gesture
@@ -771,7 +779,7 @@ final class MapGestureDetector {
private final class TapGestureListener implements MultiFingerTapGestureDetector.OnMultiFingerTapGestureListener {
@Override
- public boolean onMultiFingerTap(MultiFingerTapGestureDetector detector, int pointersCount) {
+ public boolean onMultiFingerTap(@NonNull MultiFingerTapGestureDetector detector, int pointersCount) {
if (!uiSettings.isZoomGesturesEnabled() || pointersCount != 2) {
return false;
}
@@ -797,15 +805,15 @@ final class MapGestureDetector {
}
}
- private Animator createScaleAnimator(double currentZoom, double zoomAddition, final PointF animationFocalPoint,
- long animationTime) {
+ private Animator createScaleAnimator(double currentZoom, double zoomAddition,
+ @NonNull final PointF animationFocalPoint, long animationTime) {
ValueAnimator animator = ValueAnimator.ofFloat((float) currentZoom, (float) (currentZoom + zoomAddition));
animator.setDuration(animationTime);
animator.setInterpolator(new DecelerateInterpolator());
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
- public void onAnimationUpdate(ValueAnimator animation) {
+ public void onAnimationUpdate(@NonNull ValueAnimator animation) {
transform.setZoom((Float) animation.getAnimatedValue(), animationFocalPoint);
}
});
@@ -838,7 +846,7 @@ final class MapGestureDetector {
* @param runImmediately if true, animation will be started right away, otherwise it will wait until
* {@link MotionEvent#ACTION_UP} is registered.
*/
- void zoomInAnimated(PointF zoomFocalPoint, boolean runImmediately) {
+ void zoomInAnimated(@NonNull PointF zoomFocalPoint, boolean runImmediately) {
zoomAnimated(true, zoomFocalPoint, runImmediately);
}
@@ -849,11 +857,11 @@ final class MapGestureDetector {
* @param runImmediately if true, animation will be started right away, otherwise it will wait until
* {@link MotionEvent#ACTION_UP} is registered.
*/
- void zoomOutAnimated(PointF zoomFocalPoint, boolean runImmediately) {
+ void zoomOutAnimated(@NonNull PointF zoomFocalPoint, boolean runImmediately) {
zoomAnimated(false, zoomFocalPoint, runImmediately);
}
- private void zoomAnimated(boolean zoomIn, PointF zoomFocalPoint, boolean runImmediately) {
+ private void zoomAnimated(boolean zoomIn, @NonNull PointF zoomFocalPoint, boolean runImmediately) {
//canceling here as well, because when using a button it will not be canceled automatically by onDown()
cancelAnimator(scaleAnimator);
@@ -891,7 +899,7 @@ final class MapGestureDetector {
&& (!uiSettings.isTiltGesturesEnabled() || !gesturesManager.getShoveGestureDetector().isInProgress());
}
- private void sendTelemetryEvent(String eventType, PointF focalPoint) {
+ private void sendTelemetryEvent(String eventType, @NonNull PointF focalPoint) {
TelemetryDefinition telemetry = Mapbox.getTelemetry();
if (telemetry != null) {
CameraPosition cameraPosition = transform.getCameraPosition();
@@ -909,7 +917,7 @@ final class MapGestureDetector {
return mapZoom >= MapboxConstants.MINIMUM_ZOOM && mapZoom <= MapboxConstants.MAXIMUM_ZOOM;
}
- void notifyOnMapClickListeners(PointF tapPoint) {
+ void notifyOnMapClickListeners(@NonNull PointF tapPoint) {
for (MapboxMap.OnMapClickListener listener : onMapClickListenerList) {
if (listener.onMapClick(projection.fromScreenLocation(tapPoint))) {
return;
@@ -917,7 +925,7 @@ final class MapGestureDetector {
}
}
- void notifyOnMapLongClickListeners(PointF longClickPoint) {
+ void notifyOnMapLongClickListeners(@NonNull PointF longClickPoint) {
for (MapboxMap.OnMapLongClickListener listener : onMapLongClickListenerList) {
if (listener.onMapLongClick(projection.fromScreenLocation(longClickPoint))) {
return;
@@ -931,73 +939,73 @@ final class MapGestureDetector {
}
}
- void notifyOnMoveBeginListeners(MoveGestureDetector detector) {
+ void notifyOnMoveBeginListeners(@NonNull MoveGestureDetector detector) {
for (MapboxMap.OnMoveListener listener : onMoveListenerList) {
listener.onMoveBegin(detector);
}
}
- void notifyOnMoveListeners(MoveGestureDetector detector) {
+ void notifyOnMoveListeners(@NonNull MoveGestureDetector detector) {
for (MapboxMap.OnMoveListener listener : onMoveListenerList) {
listener.onMove(detector);
}
}
- void notifyOnMoveEndListeners(MoveGestureDetector detector) {
+ void notifyOnMoveEndListeners(@NonNull MoveGestureDetector detector) {
for (MapboxMap.OnMoveListener listener : onMoveListenerList) {
listener.onMoveEnd(detector);
}
}
- void notifyOnRotateBeginListeners(RotateGestureDetector detector) {
+ void notifyOnRotateBeginListeners(@NonNull RotateGestureDetector detector) {
for (MapboxMap.OnRotateListener listener : onRotateListenerList) {
listener.onRotateBegin(detector);
}
}
- void notifyOnRotateListeners(RotateGestureDetector detector) {
+ void notifyOnRotateListeners(@NonNull RotateGestureDetector detector) {
for (MapboxMap.OnRotateListener listener : onRotateListenerList) {
listener.onRotate(detector);
}
}
- void notifyOnRotateEndListeners(RotateGestureDetector detector) {
+ void notifyOnRotateEndListeners(@NonNull RotateGestureDetector detector) {
for (MapboxMap.OnRotateListener listener : onRotateListenerList) {
listener.onRotateEnd(detector);
}
}
- void notifyOnScaleBeginListeners(StandardScaleGestureDetector detector) {
+ void notifyOnScaleBeginListeners(@NonNull StandardScaleGestureDetector detector) {
for (MapboxMap.OnScaleListener listener : onScaleListenerList) {
listener.onScaleBegin(detector);
}
}
- void notifyOnScaleListeners(StandardScaleGestureDetector detector) {
+ void notifyOnScaleListeners(@NonNull StandardScaleGestureDetector detector) {
for (MapboxMap.OnScaleListener listener : onScaleListenerList) {
listener.onScale(detector);
}
}
- void notifyOnScaleEndListeners(StandardScaleGestureDetector detector) {
+ void notifyOnScaleEndListeners(@NonNull StandardScaleGestureDetector detector) {
for (MapboxMap.OnScaleListener listener : onScaleListenerList) {
listener.onScaleEnd(detector);
}
}
- void notifyOnShoveBeginListeners(ShoveGestureDetector detector) {
+ void notifyOnShoveBeginListeners(@NonNull ShoveGestureDetector detector) {
for (MapboxMap.OnShoveListener listener : onShoveListenerList) {
listener.onShoveBegin(detector);
}
}
- void notifyOnShoveListeners(ShoveGestureDetector detector) {
+ void notifyOnShoveListeners(@NonNull ShoveGestureDetector detector) {
for (MapboxMap.OnShoveListener listener : onShoveListenerList) {
listener.onShove(detector);
}
}
- void notifyOnShoveEndListeners(ShoveGestureDetector detector) {
+ void notifyOnShoveEndListeners(@NonNull ShoveGestureDetector detector) {
for (MapboxMap.OnShoveListener listener : onShoveListenerList) {
listener.onShoveEnd(detector);
}
@@ -1063,8 +1071,8 @@ final class MapGestureDetector {
return gesturesManager;
}
- void setGesturesManager(Context context, AndroidGesturesManager gesturesManager, boolean attachDefaultListeners,
- boolean setDefaultMutuallyExclusives) {
+ void setGesturesManager(@NonNull Context context, @NonNull AndroidGesturesManager gesturesManager,
+ boolean attachDefaultListeners, boolean setDefaultMutuallyExclusives) {
initializeGesturesManager(gesturesManager, setDefaultMutuallyExclusives);
initializeGestureListeners(context, attachDefaultListeners);
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java
index 08110ff326..afb80027d9 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java
@@ -4,6 +4,7 @@ import android.graphics.PointF;
import android.os.Handler;
import android.os.Looper;
import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.ViewConfiguration;
@@ -23,6 +24,7 @@ final class MapKeyListener {
private final UiSettings uiSettings;
private final MapGestureDetector mapGestureDetector;
+ @Nullable
private TrackballLongPressTimeOut currentTrackballLongPressTimeOut;
MapKeyListener(Transform transform, UiSettings uiSettings, MapGestureDetector mapGestureDetector) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
index d6dcce434d..ca7fd213c9 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
@@ -69,7 +69,9 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
private final MapCallback mapCallback = new MapCallback();
private final InitialRenderCallback initialRenderCallback = new InitialRenderCallback();
+ @Nullable
private NativeMapView nativeMapView;
+ @Nullable
private MapboxMap mapboxMap;
private MapboxMapOptions mapboxMapOptions;
private MapRenderer mapRenderer;
@@ -81,8 +83,11 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
private ImageView attrView;
private ImageView logoView;
+ @Nullable
private MapGestureDetector mapGestureDetector;
+ @Nullable
private MapKeyListener mapKeyListener;
+ @Nullable
private Bundle savedInstanceState;
@UiThread
@@ -211,7 +216,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
};
}
- private MapboxMap.OnCompassAnimationListener createCompassAnimationListener(final CameraChangeDispatcher
+ private MapboxMap.OnCompassAnimationListener createCompassAnimationListener(@NonNull final CameraChangeDispatcher
cameraChangeDispatcher) {
return new MapboxMap.OnCompassAnimationListener() {
@Override
@@ -227,7 +232,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
};
}
- private OnClickListener createCompassClickListener(final CameraChangeDispatcher cameraChangeDispatcher) {
+ private OnClickListener createCompassClickListener(@NonNull final CameraChangeDispatcher cameraChangeDispatcher) {
return new OnClickListener() {
@Override
public void onClick(View v) {
@@ -438,7 +443,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
}
@Override
- public boolean onKeyDown(int keyCode, KeyEvent event) {
+ public boolean onKeyDown(int keyCode, @NonNull KeyEvent event) {
return mapKeyListener.onKeyDown(keyCode, event) || super.onKeyDown(keyCode, event);
}
@@ -448,17 +453,17 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
}
@Override
- public boolean onKeyUp(int keyCode, KeyEvent event) {
+ public boolean onKeyUp(int keyCode, @NonNull KeyEvent event) {
return mapKeyListener.onKeyUp(keyCode, event) || super.onKeyUp(keyCode, event);
}
@Override
- public boolean onTrackballEvent(MotionEvent event) {
+ public boolean onTrackballEvent(@NonNull MotionEvent event) {
return mapKeyListener.onTrackballEvent(event) || super.onTrackballEvent(event);
}
@Override
- public boolean onGenericMotionEvent(MotionEvent event) {
+ public boolean onGenericMotionEvent(@NonNull MotionEvent event) {
if (!isGestureDetectorInitialized()) {
return super.onGenericMotionEvent(event);
}
@@ -517,7 +522,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
* @param definition the offline region definition
* @see OfflineRegionDefinition
*/
- public void setOfflineRegionDefinition(OfflineRegionDefinition definition) {
+ public void setOfflineRegionDefinition(@NonNull OfflineRegionDefinition definition) {
double minZoom = definition.getMinZoom();
double maxZoom = definition.getMaxZoom();
@@ -564,6 +569,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
// ViewCallback
//
+ @Nullable
@Override
public Bitmap getViewContent() {
return BitmapUtils.createBitmapFromView(this);
@@ -973,6 +979,7 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
return mapGestureDetector != null;
}
+ @Nullable
MapboxMap getMapboxMap() {
return mapboxMap;
}
@@ -1240,10 +1247,11 @@ public class MapView extends FrameLayout implements NativeMapView.ViewCallback {
*/
private static class AttributionClickListener implements OnClickListener {
+ @NonNull
private final AttributionDialogManager defaultDialogManager;
private UiSettings uiSettings;
- private AttributionClickListener(Context context, MapboxMap mapboxMap) {
+ private AttributionClickListener(@NonNull Context context, @NonNull MapboxMap mapboxMap) {
this.defaultDialogManager = new AttributionDialogManager(context, mapboxMap);
this.uiSettings = mapboxMap.getUiSettings();
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
index 7172a6a52a..f986d9d96c 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java
@@ -78,6 +78,7 @@ public final class MapboxMap {
private final OnGesturesManagerInteractionListener onGesturesManagerInteractionListener;
private LocationComponent locationComponent;
+ @Nullable
private MapboxMap.OnFpsChangedListener onFpsChangedListener;
MapboxMap(NativeMapView map, Transform transform, UiSettings ui, Projection projection,
@@ -681,7 +682,7 @@ public final class MapboxMap {
* @param update The change that should be applied to the camera.
* @see com.mapbox.mapboxsdk.camera.CameraUpdateFactory for a set of updates.
*/
- public final void easeCamera(CameraUpdate update) {
+ public final void easeCamera(@NonNull CameraUpdate update) {
easeCamera(update, MapboxConstants.ANIMATION_DURATION);
}
@@ -698,7 +699,7 @@ public final class MapboxMap {
* Do not update or ease the camera from within onCancel().
* @see com.mapbox.mapboxsdk.camera.CameraUpdateFactory for a set of updates.
*/
- public final void easeCamera(CameraUpdate update, @Nullable final MapboxMap.CancelableCallback callback) {
+ public final void easeCamera(@NonNull CameraUpdate update, @Nullable final MapboxMap.CancelableCallback callback) {
easeCamera(update, MapboxConstants.ANIMATION_DURATION, callback);
}
@@ -1074,7 +1075,7 @@ public final class MapboxMap {
* @param style The bundled style.
* @see Style
*/
- public void setStyle(@Style.StyleUrl String style) {
+ public void setStyle(@NonNull @Style.StyleUrl String style) {
setStyleUrl(style);
}
@@ -1090,7 +1091,7 @@ public final class MapboxMap {
* @param callback The callback to be invoked when the style has finished loading
* @see Style
*/
- public void setStyle(@Style.StyleUrl String style, @Nullable OnStyleLoadedListener callback) {
+ public void setStyle(@NonNull @Style.StyleUrl String style, @Nullable OnStyleLoadedListener callback) {
setStyleUrl(style, callback);
}
@@ -1769,7 +1770,7 @@ public final class MapboxMap {
*/
@NonNull
@Deprecated
- public CameraPosition getCameraForGeometry(Geometry geometry, double bearing, int[] padding) {
+ public CameraPosition getCameraForGeometry(@NonNull Geometry geometry, double bearing, @NonNull int[] padding) {
return getCameraForGeometry(geometry, padding, bearing, transform.getTilt());
}
@@ -2556,6 +2557,7 @@ public final class MapboxMap {
private Context context;
private final Class<U> persistentClass;
+ @NonNull
private final Pools.SimplePool<View> viewReusePool;
/**
@@ -2639,6 +2641,7 @@ public final class MapboxMap {
*
* @return the pool associated to this adapter
*/
+ @NonNull
public final Pools.SimplePool<View> getViewReusePool() {
return viewReusePool;
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java
index eb745fdec5..a5a6ede1dd 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMapOptions.java
@@ -142,6 +142,7 @@ public class MapboxMapOptions implements Parcelable {
* @param attrs Attributeset containing configuration
* @return the MapboxMapOptions created from attributes
*/
+ @NonNull
public static MapboxMapOptions createFromAttributes(@NonNull Context context, @Nullable AttributeSet attrs) {
MapboxMapOptions mapboxMapOptions = new MapboxMapOptions();
float pxlRatio = context.getResources().getDisplayMetrics().density;
@@ -247,6 +248,7 @@ public class MapboxMapOptions implements Parcelable {
* @param apiBaseUrl The base of our API endpoint
* @return This
*/
+ @NonNull
public MapboxMapOptions apiBaseUrl(String apiBaseUrl) {
this.apiBaseUrl = apiBaseUrl;
return this;
@@ -258,6 +260,7 @@ public class MapboxMapOptions implements Parcelable {
* @param cameraPosition Inital camera position
* @return This
*/
+ @NonNull
public MapboxMapOptions camera(CameraPosition cameraPosition) {
this.cameraPosition = cameraPosition;
return this;
@@ -269,6 +272,7 @@ public class MapboxMapOptions implements Parcelable {
* @param styleUrl Url to be used to load a styleUrl
* @return This
*/
+ @NonNull
public MapboxMapOptions styleUrl(String styleUrl) {
this.styleUrl = styleUrl;
return this;
@@ -280,6 +284,7 @@ public class MapboxMapOptions implements Parcelable {
* @param styleJson json to used as style
* @return This
*/
+ @NonNull
public MapboxMapOptions styleJson(String styleJson) {
this.styleJson = styleJson;
return this;
@@ -291,6 +296,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True is debug is enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions debugActive(boolean enabled) {
debugActive = enabled;
return this;
@@ -302,6 +308,7 @@ public class MapboxMapOptions implements Parcelable {
* @param minZoom Zoom level to be used
* @return This
*/
+ @NonNull
public MapboxMapOptions minZoomPreference(double minZoom) {
this.minZoom = minZoom;
return this;
@@ -313,6 +320,7 @@ public class MapboxMapOptions implements Parcelable {
* @param maxZoom Zoom level to be used
* @return This
*/
+ @NonNull
public MapboxMapOptions maxZoomPreference(double maxZoom) {
this.maxZoom = maxZoom;
return this;
@@ -324,6 +332,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and mapbox_compass_icon is shown
* @return This
*/
+ @NonNull
public MapboxMapOptions compassEnabled(boolean enabled) {
compassEnabled = enabled;
return this;
@@ -335,6 +344,7 @@ public class MapboxMapOptions implements Parcelable {
* @param gravity Android SDK Gravity.
* @return This
*/
+ @NonNull
public MapboxMapOptions compassGravity(int gravity) {
compassGravity = gravity;
return this;
@@ -346,6 +356,7 @@ public class MapboxMapOptions implements Parcelable {
* @param margins 4 long array for LTRB margins
* @return This
*/
+ @NonNull
public MapboxMapOptions compassMargins(int[] margins) {
compassMargins = margins;
return this;
@@ -360,6 +371,7 @@ public class MapboxMapOptions implements Parcelable {
* @param compassFadeWhenFacingNorth true is mapbox_compass_icon fades to invisble
* @return This
*/
+ @NonNull
public MapboxMapOptions compassFadesWhenFacingNorth(boolean compassFadeWhenFacingNorth) {
this.fadeCompassFacingNorth = compassFadeWhenFacingNorth;
return this;
@@ -374,6 +386,7 @@ public class MapboxMapOptions implements Parcelable {
* @param compass the drawable to show as image compass
* @return This
*/
+ @NonNull
public MapboxMapOptions compassImage(Drawable compass) {
this.compassImage = compass;
return this;
@@ -385,6 +398,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and logo is shown
* @return This
*/
+ @NonNull
public MapboxMapOptions logoEnabled(boolean enabled) {
logoEnabled = enabled;
return this;
@@ -396,6 +410,7 @@ public class MapboxMapOptions implements Parcelable {
* @param gravity Android SDK Gravity.
* @return This
*/
+ @NonNull
public MapboxMapOptions logoGravity(int gravity) {
logoGravity = gravity;
return this;
@@ -407,6 +422,7 @@ public class MapboxMapOptions implements Parcelable {
* @param margins 4 long array for LTRB margins
* @return This
*/
+ @NonNull
public MapboxMapOptions logoMargins(int[] margins) {
logoMargins = margins;
return this;
@@ -418,6 +434,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and attribution is shown
* @return This
*/
+ @NonNull
public MapboxMapOptions attributionEnabled(boolean enabled) {
attributionEnabled = enabled;
return this;
@@ -429,6 +446,7 @@ public class MapboxMapOptions implements Parcelable {
* @param gravity Android SDK Gravity.
* @return This
*/
+ @NonNull
public MapboxMapOptions attributionGravity(int gravity) {
attributionGravity = gravity;
return this;
@@ -440,6 +458,7 @@ public class MapboxMapOptions implements Parcelable {
* @param margins 4 long array for LTRB margins
* @return This
*/
+ @NonNull
public MapboxMapOptions attributionMargins(int[] margins) {
attributionMargins = margins;
return this;
@@ -451,6 +470,7 @@ public class MapboxMapOptions implements Parcelable {
* @param color integer resembling a color
* @return This
*/
+ @NonNull
public MapboxMapOptions attributionTintColor(@ColorInt int color) {
attributionTintColor = color;
return this;
@@ -462,6 +482,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and gesture will be enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions rotateGesturesEnabled(boolean enabled) {
rotateGesturesEnabled = enabled;
return this;
@@ -473,6 +494,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and gesture will be enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions scrollGesturesEnabled(boolean enabled) {
scrollGesturesEnabled = enabled;
return this;
@@ -484,6 +506,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and gesture will be enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions tiltGesturesEnabled(boolean enabled) {
tiltGesturesEnabled = enabled;
return this;
@@ -495,6 +518,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and gesture will be enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions zoomGesturesEnabled(boolean enabled) {
zoomGesturesEnabled = enabled;
return this;
@@ -506,6 +530,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enabled True and gesture will be enabled
* @return This
*/
+ @NonNull
public MapboxMapOptions doubleTapGesturesEnabled(boolean enabled) {
doubleTapGesturesEnabled = enabled;
return this;
@@ -524,11 +549,13 @@ public class MapboxMapOptions implements Parcelable {
* @param textureMode True to enable texture mode
* @return This
*/
+ @NonNull
public MapboxMapOptions textureMode(boolean textureMode) {
this.textureMode = textureMode;
return this;
}
+ @NonNull
public MapboxMapOptions translucentTextureSurface(boolean translucentTextureSurface) {
this.translucentTextureSurface = translucentTextureSurface;
return this;
@@ -540,6 +567,7 @@ public class MapboxMapOptions implements Parcelable {
* @param loadColor the color to show during map creation
* @return This
*/
+ @NonNull
public MapboxMapOptions foregroundLoadColor(@ColorInt int loadColor) {
this.foregroundLoadColor = loadColor;
return this;
@@ -553,6 +581,7 @@ public class MapboxMapOptions implements Parcelable {
* @param enable true to enable
* @return This
*/
+ @NonNull
public MapboxMapOptions setPrefetchesTiles(boolean enable) {
this.prefetchesTiles = enable;
return this;
@@ -568,6 +597,7 @@ public class MapboxMapOptions implements Parcelable {
* @param crossSourceCollisions true to enable, false to disable
* @return This
*/
+ @NonNull
public MapboxMapOptions crossSourceCollisions(boolean crossSourceCollisions) {
this.crossSourceCollisions = crossSourceCollisions;
return this;
@@ -583,6 +613,7 @@ public class MapboxMapOptions implements Parcelable {
* @param fontFamily font family for local ideograph generation.
* @return This
*/
+ @NonNull
public MapboxMapOptions localIdeographFontFamily(String fontFamily) {
this.localIdeographFontFamily = fontFamily;
return this;
@@ -595,6 +626,7 @@ public class MapboxMapOptions implements Parcelable {
* @param pixelRatio the custom pixel ratio of the map under construction
* @return This
*/
+ @NonNull
public MapboxMapOptions pixelRatio(float pixelRatio) {
this.pixelRatio = pixelRatio;
return this;
@@ -896,7 +928,7 @@ public class MapboxMapOptions implements Parcelable {
}
public static final Parcelable.Creator<MapboxMapOptions> CREATOR = new Parcelable.Creator<MapboxMapOptions>() {
- public MapboxMapOptions createFromParcel(Parcel in) {
+ public MapboxMapOptions createFromParcel(@NonNull Parcel in) {
return new MapboxMapOptions(in);
}
@@ -911,7 +943,7 @@ public class MapboxMapOptions implements Parcelable {
}
@Override
- public void writeToParcel(Parcel dest, int flags) {
+ public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeParcelable(cameraPosition, flags);
dest.writeByte((byte) (debugActive ? 1 : 0));
@@ -954,7 +986,7 @@ public class MapboxMapOptions implements Parcelable {
}
@Override
- public boolean equals(Object o) {
+ public boolean equals(@Nullable Object o) {
if (this == o) {
return true;
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MarkerContainer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MarkerContainer.java
index 2c2f07a112..8b9ff78aa3 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MarkerContainer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MarkerContainer.java
@@ -48,6 +48,7 @@ class MarkerContainer implements Markers {
return marker;
}
+ @NonNull
@Override
public List<Marker> addBy(@NonNull List<? extends BaseMarkerOptions> markerOptionsList, @NonNull MapboxMap
mapboxMap) {
@@ -82,6 +83,7 @@ class MarkerContainer implements Markers {
annotations.setValueAt(annotations.indexOfKey(updatedMarker.getId()), updatedMarker);
}
+ @NonNull
@Override
public List<Marker> obtainAll() {
List<Marker> markers = new ArrayList<>();
@@ -137,6 +139,7 @@ class MarkerContainer implements Markers {
return marker;
}
+ @NonNull
@Override
public List<MarkerView> addViewsBy(@NonNull List<? extends BaseMarkerViewOptions> markerViewOptions, @NonNull
MapboxMap mapboxMap) {
@@ -160,6 +163,7 @@ class MarkerContainer implements Markers {
return markers;
}
+ @NonNull
@Override
public List<MarkerView> obtainViewsIn(@NonNull RectF rectangle) {
float pixelRatio = nativeMapView.getPixelRatio();
@@ -210,12 +214,13 @@ class MarkerContainer implements Markers {
return marker;
}
- private void ensureIconLoaded(Marker marker, MapboxMap mapboxMap) {
+ private void ensureIconLoaded(Marker marker, @NonNull MapboxMap mapboxMap) {
if (!(marker instanceof MarkerView)) {
iconManager.ensureIconLoaded(marker, mapboxMap);
}
}
+ @NonNull
private List<Annotation> obtainAnnotations() {
List<Annotation> annotations = new ArrayList<>();
for (int i = 0; i < this.annotations.size(); i++) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Markers.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Markers.java
index d646e0ac49..d85f388d09 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Markers.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Markers.java
@@ -25,6 +25,7 @@ interface Markers {
List<Marker> obtainAll();
+ @NonNull
List<Marker> obtainAllIn(@NonNull RectF rectangle);
MarkerView addViewBy(@NonNull BaseMarkerViewOptions markerOptions, @NonNull MapboxMap mapboxMap,
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
index eaba89e31b..532f311e90 100755
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/NativeMapView.java
@@ -55,9 +55,11 @@ final class NativeMapView {
private final MapRenderer mapRenderer;
// Used to validate if methods are called from the correct thread
+ @NonNull
private final Thread thread;
// Used for view callbacks
+ @Nullable
private ViewCallback viewCallback;
// Used for map change callbacks
@@ -84,8 +86,9 @@ final class NativeMapView {
// Constructors
//
- public NativeMapView(final Context context, final boolean crossSourceCollisions, final ViewCallback viewCallback,
- final StateCallback stateCallback, final MapRenderer mapRenderer) {
+ public NativeMapView(@NonNull final Context context, final boolean crossSourceCollisions,
+ final ViewCallback viewCallback, final StateCallback stateCallback,
+ final MapRenderer mapRenderer) {
this(context, context.getResources().getDisplayMetrics().density, crossSourceCollisions, viewCallback,
stateCallback, mapRenderer);
}
@@ -239,14 +242,14 @@ final class NativeMapView {
nativeMoveBy(dx / pixelRatio, dy / pixelRatio, duration);
}
- public void setLatLng(LatLng latLng) {
+ public void setLatLng(@NonNull LatLng latLng) {
if (checkState("setLatLng")) {
return;
}
setLatLng(latLng, 0);
}
- public void setLatLng(LatLng latLng, long duration) {
+ public void setLatLng(@NonNull LatLng latLng, long duration) {
if (checkState("setLatLng")) {
return;
}
@@ -312,7 +315,7 @@ final class NativeMapView {
nativeSetPitch(pitch, duration);
}
- public void setZoom(double zoom, PointF focalPoint, long duration) {
+ public void setZoom(double zoom, @NonNull PointF focalPoint, long duration) {
if (checkState("setZoom")) {
return;
}
@@ -437,7 +440,8 @@ final class NativeMapView {
return nativeAddMarkers(markers)[0];
}
- public long[] addMarkers(List<Marker> markers) {
+ @NonNull
+ public long[] addMarkers(@NonNull List<Marker> markers) {
if (checkState("addMarkers")) {
return new long[] {};
}
@@ -452,7 +456,8 @@ final class NativeMapView {
return nativeAddPolylines(polylines)[0];
}
- public long[] addPolylines(List<Polyline> polylines) {
+ @NonNull
+ public long[] addPolylines(@NonNull List<Polyline> polylines) {
if (checkState("addPolylines")) {
return new long[] {};
}
@@ -467,14 +472,15 @@ final class NativeMapView {
return nativeAddPolygons(polygons)[0];
}
- public long[] addPolygons(List<Polygon> polygons) {
+ @NonNull
+ public long[] addPolygons(@NonNull List<Polygon> polygons) {
if (checkState("addPolygons")) {
return new long[] {};
}
return nativeAddPolygons(polygons.toArray(new Polygon[polygons.size()]));
}
- public void updateMarker(Marker marker) {
+ public void updateMarker(@NonNull Marker marker) {
if (checkState("updateMarker")) {
return;
}
@@ -483,14 +489,14 @@ final class NativeMapView {
nativeUpdateMarker(marker.getId(), position.getLatitude(), position.getLongitude(), icon.getId());
}
- public void updatePolygon(Polygon polygon) {
+ public void updatePolygon(@NonNull Polygon polygon) {
if (checkState("updatePolygon")) {
return;
}
nativeUpdatePolygon(polygon.getId(), polygon);
}
- public void updatePolyline(Polyline polyline) {
+ public void updatePolyline(@NonNull Polyline polyline) {
if (checkState("updatePolyline")) {
return;
}
@@ -512,6 +518,7 @@ final class NativeMapView {
nativeRemoveAnnotations(ids);
}
+ @NonNull
public long[] queryPointAnnotations(RectF rect) {
if (checkState("queryPointAnnotations")) {
return new long[] {};
@@ -519,6 +526,7 @@ final class NativeMapView {
return nativeQueryPointAnnotations(rect);
}
+ @NonNull
public long[] queryShapeAnnotations(RectF rectF) {
if (checkState("queryShapeAnnotations")) {
return new long[] {};
@@ -596,14 +604,14 @@ final class NativeMapView {
return nativeGetMetersPerPixelAtLatitude(lat, getZoom()) / pixelRatio;
}
- public ProjectedMeters projectedMetersForLatLng(LatLng latLng) {
+ public ProjectedMeters projectedMetersForLatLng(@NonNull LatLng latLng) {
if (checkState("projectedMetersForLatLng")) {
return null;
}
return nativeProjectedMetersForLatLng(latLng.getLatitude(), latLng.getLongitude());
}
- public LatLng latLngForProjectedMeters(ProjectedMeters projectedMeters) {
+ public LatLng latLngForProjectedMeters(@NonNull ProjectedMeters projectedMeters) {
if (checkState("latLngForProjectedMeters")) {
return new LatLng();
}
@@ -611,7 +619,8 @@ final class NativeMapView {
projectedMeters.getEasting()).wrap();
}
- public PointF pixelForLatLng(LatLng latLng) {
+ @NonNull
+ public PointF pixelForLatLng(@NonNull LatLng latLng) {
if (checkState("pixelForLatLng")) {
return new PointF();
}
@@ -620,7 +629,7 @@ final class NativeMapView {
return pointF;
}
- public LatLng latLngForPixel(PointF pixel) {
+ public LatLng latLngForPixel(@NonNull PointF pixel) {
if (checkState("latLngForPixel")) {
return new LatLng();
}
@@ -634,14 +643,14 @@ final class NativeMapView {
return nativeGetTopOffsetPixelsForAnnotationSymbol(symbolName);
}
- public void jumpTo(double angle, LatLng center, double pitch, double zoom) {
+ public void jumpTo(double angle, @NonNull LatLng center, double pitch, double zoom) {
if (checkState("jumpTo")) {
return;
}
nativeJumpTo(angle, center.getLatitude(), center.getLongitude(), pitch, zoom);
}
- public void easeTo(double angle, LatLng center, long duration, double pitch, double zoom,
+ public void easeTo(double angle, @NonNull LatLng center, long duration, double pitch, double zoom,
boolean easingInterpolator) {
if (checkState("easeTo")) {
return;
@@ -650,13 +659,14 @@ final class NativeMapView {
easingInterpolator);
}
- public void flyTo(double angle, LatLng center, long duration, double pitch, double zoom) {
+ public void flyTo(double angle, @NonNull LatLng center, long duration, double pitch, double zoom) {
if (checkState("flyTo")) {
return;
}
nativeFlyTo(angle, center.getLatitude(), center.getLongitude(), duration, pitch, zoom);
}
+ @NonNull
public CameraPosition getCameraPosition() {
if (checkState("getCameraValues")) {
return new CameraPosition.Builder().build();
@@ -967,7 +977,7 @@ final class NativeMapView {
}
@Keep
- protected void onSnapshotReady(Bitmap mapContent) {
+ protected void onSnapshotReady(@Nullable Bitmap mapContent) {
if (checkState("OnSnapshotReady")) {
return;
}
@@ -998,12 +1008,14 @@ final class NativeMapView {
@Keep
private native void nativeSetStyleUrl(String url);
+ @NonNull
@Keep
private native String nativeGetStyleUrl();
@Keep
private native void nativeSetStyleJson(String newStyleJson);
+ @NonNull
@Keep
private native String nativeGetStyleJson();
@@ -1022,13 +1034,16 @@ final class NativeMapView {
@Keep
private native void nativeSetLatLng(double latitude, double longitude, long duration);
+ @NonNull
@Keep
private native LatLng nativeGetLatLng();
+ @NonNull
@Keep
private native CameraPosition nativeGetCameraForLatLngBounds(
LatLngBounds latLngBounds, double top, double left, double bottom, double right, double bearing, double tilt);
+ @NonNull
@Keep
private native CameraPosition nativeGetCameraForGeometry(
Geometry geometry, double top, double left, double bottom, double right, double bearing, double tilt);
@@ -1084,21 +1099,26 @@ final class NativeMapView {
@Keep
private native void nativeUpdateMarker(long markerId, double lat, double lon, String iconId);
+ @NonNull
@Keep
private native long[] nativeAddMarkers(Marker[] markers);
+ @NonNull
@Keep
private native long[] nativeAddPolylines(Polyline[] polylines);
+ @NonNull
@Keep
private native long[] nativeAddPolygons(Polygon[] polygons);
@Keep
private native void nativeRemoveAnnotations(long[] id);
+ @NonNull
@Keep
private native long[] nativeQueryPointAnnotations(RectF rect);
+ @NonNull
@Keep
private native long[] nativeQueryShapeAnnotations(RectF rect);
@@ -1133,15 +1153,19 @@ final class NativeMapView {
@Keep
private native double nativeGetMetersPerPixelAtLatitude(double lat, double zoom);
+ @NonNull
@Keep
private native ProjectedMeters nativeProjectedMetersForLatLng(double latitude, double longitude);
+ @NonNull
@Keep
private native LatLng nativeLatLngForProjectedMeters(double northing, double easting);
+ @NonNull
@Keep
private native PointF nativePixelForLatLng(double lat, double lon);
+ @NonNull
@Keep
private native LatLng nativeLatLngForPixel(float x, float y);
@@ -1160,6 +1184,7 @@ final class NativeMapView {
private native void nativeFlyTo(double angle, double latitude, double longitude,
long duration, double pitch, double zoom);
+ @NonNull
@Keep
private native CameraPosition nativeGetCameraPosition();
@@ -1175,9 +1200,11 @@ final class NativeMapView {
@Keep
private native void nativeSetTransitionDelay(long delay);
+ @NonNull
@Keep
private native Layer[] nativeGetLayers();
+ @NonNull
@Keep
private native Layer nativeGetLayer(String layerId);
@@ -1190,18 +1217,22 @@ final class NativeMapView {
@Keep
private native void nativeAddLayerAt(long layerPtr, int index) throws CannotAddLayerException;
+ @NonNull
@Keep
private native Layer nativeRemoveLayerById(String layerId);
@Keep
private native void nativeRemoveLayer(long layerId);
+ @NonNull
@Keep
private native Layer nativeRemoveLayerAt(int index);
+ @NonNull
@Keep
private native Source[] nativeGetSources();
+ @NonNull
@Keep
private native Source nativeGetSource(String sourceId);
@@ -1220,6 +1251,7 @@ final class NativeMapView {
@Keep
private native void nativeRemoveImage(String name);
+ @NonNull
@Keep
private native Bitmap nativeGetImage(String name);
@@ -1232,17 +1264,20 @@ final class NativeMapView {
@Keep
private native void nativeTakeSnapshot();
+ @NonNull
@Keep
private native Feature[] nativeQueryRenderedFeaturesForPoint(float x, float y,
String[] layerIds,
Object[] filter);
+ @NonNull
@Keep
private native Feature[] nativeQueryRenderedFeaturesForBox(float left, float top,
float right, float bottom,
String[] layerIds,
Object[] filter);
+ @NonNull
@Keep
private native Light nativeGetLight();
@@ -1278,7 +1313,7 @@ final class NativeMapView {
nativeTakeSnapshot();
}
- public void setOnFpsChangedListener(final MapboxMap.OnFpsChangedListener listener) {
+ public void setOnFpsChangedListener(@NonNull final MapboxMap.OnFpsChangedListener listener) {
final Handler handler = new Handler();
mapRenderer.queueEvent(new Runnable() {
@@ -1316,6 +1351,7 @@ final class NativeMapView {
this.sdf = sdf;
}
+ @NonNull
@Override
protected List<Image> doInBackground(HashMap<String, Bitmap>... params) {
HashMap<String, Bitmap> bitmapHashMap = params[0];
@@ -1345,7 +1381,7 @@ final class NativeMapView {
}
@Override
- protected void onPostExecute(List<Image> images) {
+ protected void onPostExecute(@NonNull List<Image> images) {
super.onPostExecute(images);
if (nativeMapView != null && !nativeMapView.checkState("nativeAddImages")) {
nativeMapView.nativeAddImages(images.toArray(new Image[images.size()]));
@@ -1358,6 +1394,7 @@ final class NativeMapView {
int getHeight();
+ @Nullable
Bitmap getViewContent();
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolygonContainer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolygonContainer.java
index 016862bddc..2cdcc052fb 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolygonContainer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolygonContainer.java
@@ -36,6 +36,7 @@ class PolygonContainer implements Polygons {
return polygon;
}
+ @NonNull
@Override
public List<Polygon> addBy(@NonNull List<PolygonOptions> polygonOptionsList, @NonNull MapboxMap mapboxMap) {
int count = polygonOptionsList.size();
@@ -62,11 +63,12 @@ class PolygonContainer implements Polygons {
}
@Override
- public void update(Polygon polygon) {
+ public void update(@NonNull Polygon polygon) {
nativeMapView.updatePolygon(polygon);
annotations.setValueAt(annotations.indexOfKey(polygon.getId()), polygon);
}
+ @NonNull
@Override
public List<Polygon> obtainAll() {
List<Polygon> polygons = new ArrayList<>();
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolylineContainer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolylineContainer.java
index 303b25fb55..ed0ceceb1f 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolylineContainer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/PolylineContainer.java
@@ -36,6 +36,7 @@ class PolylineContainer implements Polylines {
return polyline;
}
+ @NonNull
@Override
public List<Polyline> addBy(@NonNull List<PolylineOptions> polylineOptionsList, @NonNull MapboxMap mapboxMap) {
int count = polylineOptionsList.size();
@@ -61,11 +62,12 @@ class PolylineContainer implements Polylines {
}
@Override
- public void update(Polyline polyline) {
+ public void update(@NonNull Polyline polyline) {
nativeMapView.updatePolyline(polyline);
annotations.setValueAt(annotations.indexOfKey(polyline.getId()), polyline);
}
+ @NonNull
@Override
public List<Polyline> obtainAll() {
List<Polyline> polylines = new ArrayList<>();
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java
index 3ecf7354c4..8e3092ae1d 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java
@@ -21,6 +21,7 @@ import java.util.List;
*/
public class Projection {
+ @NonNull
private final NativeMapView nativeMapView;
private int[] contentPadding;
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/ShapeAnnotationContainer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/ShapeAnnotationContainer.java
index 6ded2f32fb..d04860a345 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/ShapeAnnotationContainer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/ShapeAnnotationContainer.java
@@ -1,6 +1,7 @@
package com.mapbox.mapboxsdk.maps;
import android.graphics.RectF;
+import android.support.annotation.NonNull;
import android.support.v4.util.LongSparseArray;
import com.mapbox.mapboxsdk.annotations.Annotation;
@@ -18,13 +19,15 @@ class ShapeAnnotationContainer implements ShapeAnnotations {
this.annotations = annotations;
}
+ @NonNull
@Override
- public List<Annotation> obtainAllIn(RectF rectangle) {
+ public List<Annotation> obtainAllIn(@NonNull RectF rectangle) {
RectF rect = nativeMapView.getDensityDependantRectangle(rectangle);
long[] annotationIds = nativeMapView.queryShapeAnnotations(rect);
return getAnnotationsFromIds(annotationIds);
}
+ @NonNull
private List<Annotation> getAnnotationsFromIds(long[] annotationIds) {
List<Annotation> shapeAnnotations = new ArrayList<>();
for (long annotationId : annotationIds) {
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java
index 590851d354..184153a241 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/SupportMapFragment.java
@@ -51,6 +51,7 @@ public class SupportMapFragment extends Fragment implements OnMapReadyCallback {
* @param mapboxMapOptions The configuration options to be used.
* @return MapFragment created.
*/
+ @NonNull
public static SupportMapFragment newInstance(@Nullable MapboxMapOptions mapboxMapOptions) {
SupportMapFragment mapFragment = new SupportMapFragment();
mapFragment.setArguments(MapFragmentUtils.createFragmentArgs(mapboxMapOptions));
@@ -78,7 +79,7 @@ public class SupportMapFragment extends Fragment implements OnMapReadyCallback {
* @param savedInstanceState The saved instance state for the map fragment.
*/
@Override
- public void onInflate(Context context, AttributeSet attrs, Bundle savedInstanceState) {
+ public void onInflate(@NonNull Context context, AttributeSet attrs, Bundle savedInstanceState) {
super.onInflate(context, attrs, savedInstanceState);
setArguments(MapFragmentUtils.createFragmentArgs(MapboxMapOptions.createFromAttributes(context, attrs)));
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java
index 6be45e3000..457353d4b9 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java
@@ -30,7 +30,9 @@ final class Transform implements MapView.OnCameraDidChangeListener {
private final MarkerViewManager markerViewManager;
private final Handler handler = new Handler();
+ @Nullable
private CameraPosition cameraPosition;
+ @Nullable
private MapboxMap.CancelableCallback cameraCancelableCallback;
private CameraChangeDispatcher cameraChangeDispatcher;
@@ -66,6 +68,7 @@ final class Transform implements MapView.OnCameraDidChangeListener {
// Camera API
//
+ @Nullable
@UiThread
public final CameraPosition getCameraPosition() {
if (cameraPosition == null) {
@@ -100,7 +103,8 @@ final class Transform implements MapView.OnCameraDidChangeListener {
}
@UiThread
- final void moveCamera(MapboxMap mapboxMap, CameraUpdate update, final MapboxMap.CancelableCallback callback) {
+ final void moveCamera(@NonNull MapboxMap mapboxMap, CameraUpdate update,
+ @Nullable final MapboxMap.CancelableCallback callback) {
CameraPosition cameraPosition = update.getCameraPosition(mapboxMap);
if (isValidCameraPosition(cameraPosition)) {
cancelTransitions();
@@ -120,8 +124,8 @@ final class Transform implements MapView.OnCameraDidChangeListener {
}
@UiThread
- final void easeCamera(MapboxMap mapboxMap, CameraUpdate update, int durationMs, boolean easingInterpolator,
- final MapboxMap.CancelableCallback callback) {
+ final void easeCamera(@NonNull MapboxMap mapboxMap, CameraUpdate update, int durationMs, boolean easingInterpolator,
+ @Nullable final MapboxMap.CancelableCallback callback) {
CameraPosition cameraPosition = update.getCameraPosition(mapboxMap);
if (isValidCameraPosition(cameraPosition)) {
cancelTransitions();
@@ -137,8 +141,8 @@ final class Transform implements MapView.OnCameraDidChangeListener {
}
@UiThread
- final void animateCamera(MapboxMap mapboxMap, CameraUpdate update, int durationMs,
- final MapboxMap.CancelableCallback callback) {
+ final void animateCamera(@NonNull MapboxMap mapboxMap, CameraUpdate update, int durationMs,
+ @Nullable final MapboxMap.CancelableCallback callback) {
CameraPosition cameraPosition = update.getCameraPosition(mapboxMap);
if (isValidCameraPosition(cameraPosition)) {
cancelTransitions();
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/UiSettings.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/UiSettings.java
index 8bc8a412f3..4caccec80d 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/UiSettings.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/UiSettings.java
@@ -29,15 +29,20 @@ import com.mapbox.mapboxsdk.utils.ColorUtils;
*/
public final class UiSettings {
+ @NonNull
private final FocalPointChangeListener focalPointChangeListener;
+ @NonNull
private final Projection projection;
+ @NonNull
private final CompassView compassView;
private final int[] compassMargins = new int[4];
+ @NonNull
private final ImageView attributionsView;
private final int[] attributionsMargins = new int[4];
private AttributionDialogManager attributionDialogManager;
+ @NonNull
private final View logoView;
private final int[] logoMargins = new int[4];
@@ -62,6 +67,7 @@ public final class UiSettings {
private boolean deselectMarkersOnTap = true;
+ @Nullable
private PointF userProvidedFocalPoint;
UiSettings(@NonNull Projection projection, @NonNull FocalPointChangeListener listener,
@@ -83,7 +89,7 @@ public final class UiSettings {
initialiseAttribution(context, options);
}
- void onSaveInstanceState(Bundle outState) {
+ void onSaveInstanceState(@NonNull Bundle outState) {
saveGestures(outState);
saveCompass(outState);
saveLogo(outState);
@@ -137,7 +143,7 @@ public final class UiSettings {
savedInstanceState.getBoolean(MapboxConstants.STATE_INCREASE_SCALE_THRESHOLD));
}
- private void initialiseCompass(MapboxMapOptions options, Resources resources) {
+ private void initialiseCompass(MapboxMapOptions options, @NonNull Resources resources) {
setCompassEnabled(options.getCompassEnabled());
setCompassGravity(options.getCompassGravity());
int[] compassMargins = options.getCompassMargins();
@@ -178,13 +184,13 @@ public final class UiSettings {
compassView.getContext(), savedInstanceState.getByteArray(MapboxConstants.STATE_COMPASS_IMAGE_BITMAP)));
}
- private void initialiseLogo(MapboxMapOptions options, Resources resources) {
+ private void initialiseLogo(MapboxMapOptions options, @NonNull Resources resources) {
setLogoEnabled(options.getLogoEnabled());
setLogoGravity(options.getLogoGravity());
setLogoMargins(resources, options.getLogoMargins());
}
- private void setLogoMargins(Resources resources, int[] logoMargins) {
+ private void setLogoMargins(@NonNull Resources resources, @Nullable int[] logoMargins) {
if (logoMargins != null) {
setLogoMargins(logoMargins[0], logoMargins[1], logoMargins[2], logoMargins[3]);
} else {
@@ -212,7 +218,7 @@ public final class UiSettings {
savedInstanceState.getInt(MapboxConstants.STATE_LOGO_MARGIN_BOTTOM));
}
- private void initialiseAttribution(Context context, MapboxMapOptions options) {
+ private void initialiseAttribution(@NonNull Context context, MapboxMapOptions options) {
setAttributionEnabled(options.getAttributionEnabled());
setAttributionGravity(options.getAttributionGravity());
setAttributionMargins(context, options.getAttributionMargins());
@@ -221,7 +227,7 @@ public final class UiSettings {
? attributionTintColor : ColorUtils.getPrimaryColor(context));
}
- private void setAttributionMargins(Context context, int[] attributionMargins) {
+ private void setAttributionMargins(@NonNull Context context, @Nullable int[] attributionMargins) {
if (attributionMargins != null) {
setAttributionMargins(attributionMargins[0], attributionMargins[1],
attributionMargins[2], attributionMargins[3]);
@@ -928,6 +934,7 @@ public final class UiSettings {
*
* @return The focal point
*/
+ @Nullable
public PointF getFocalPoint() {
return userProvidedFocalPoint;
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java
index 492f653dae..0c529aa464 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/MapRenderer.java
@@ -4,6 +4,7 @@ import android.content.Context;
import android.support.annotation.CallSuper;
import android.support.annotation.Keep;
+import android.support.annotation.NonNull;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.storage.FileSource;
@@ -25,7 +26,7 @@ public abstract class MapRenderer implements MapRendererScheduler {
private MapboxMap.OnFpsChangedListener onFpsChangedListener;
- public MapRenderer(Context context, String localIdeographFontFamily) {
+ public MapRenderer(@NonNull Context context, String localIdeographFontFamily) {
FileSource fileSource = FileSource.getInstance(context);
float pixelRatio = context.getResources().getDisplayMetrics().density;
String programCacheDir = FileSource.getInternalCachePath(context);
@@ -64,7 +65,7 @@ public abstract class MapRenderer implements MapRendererScheduler {
}
@CallSuper
- protected void onSurfaceChanged(GL10 gl, int width, int height) {
+ protected void onSurfaceChanged(@NonNull GL10 gl, int width, int height) {
gl.glViewport(0, 0, width, height);
nativeOnSurfaceChanged(width, height);
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/egl/EGLConfigChooser.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/egl/EGLConfigChooser.java
index 65db8241cf..178911b0ac 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/egl/EGLConfigChooser.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/egl/EGLConfigChooser.java
@@ -67,7 +67,7 @@ public class EGLConfigChooser implements GLSurfaceView.EGLConfigChooser {
}
@Override
- public EGLConfig chooseConfig(EGL10 egl, EGLDisplay display) {
+ public EGLConfig chooseConfig(@NonNull EGL10 egl, EGLDisplay display) {
int[] configAttribs = getConfigAttributes();
// Determine number of possible configurations
@@ -90,6 +90,7 @@ public class EGLConfigChooser implements GLSurfaceView.EGLConfigChooser {
return config;
}
+ @NonNull
private int[] getNumberOfConfigurations(EGL10 egl, EGLDisplay display, int[] configAttributes) {
int[] numConfigs = new int[1];
if (!egl.eglChooseConfig(display, configAttributes, null, 0, numConfigs)) {
@@ -101,6 +102,7 @@ public class EGLConfigChooser implements GLSurfaceView.EGLConfigChooser {
return numConfigs;
}
+ @NonNull
private EGLConfig[] getPossibleConfigurations(EGL10 egl, EGLDisplay display,
int[] configAttributes, int[] numConfigs) {
EGLConfig[] configs = new EGLConfig[numConfigs[0]];
@@ -139,7 +141,7 @@ public class EGLConfigChooser implements GLSurfaceView.EGLConfigChooser {
}
}
- private EGLConfig chooseBestMatchConfig(EGL10 egl, EGLDisplay display, EGLConfig[] configs) {
+ private EGLConfig chooseBestMatchConfig(@NonNull EGL10 egl, EGLDisplay display, EGLConfig[] configs) {
class Config implements Comparable<Config> {
private final BufferFormat bufferFormat;
private final DepthStencilFormat depthStencilFormat;
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java
index ed0bed0ac0..584c9dcf57 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/glsurfaceview/GLSurfaceViewMapRenderer.java
@@ -3,6 +3,7 @@ package com.mapbox.mapboxsdk.maps.renderer.glsurfaceview;
import android.content.Context;
import android.opengl.GLSurfaceView;
+import android.support.annotation.NonNull;
import com.mapbox.mapboxsdk.maps.renderer.MapRenderer;
import com.mapbox.mapboxsdk.maps.renderer.egl.EGLConfigChooser;
@@ -19,6 +20,7 @@ import static android.opengl.GLSurfaceView.RENDERMODE_WHEN_DIRTY;
*/
public class GLSurfaceViewMapRenderer extends MapRenderer implements GLSurfaceView.Renderer {
+ @NonNull
private final GLSurfaceView glSurfaceView;
public GLSurfaceViewMapRenderer(Context context,
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewRenderThread.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewRenderThread.java
index 8f4f1c852c..165b15a512 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewRenderThread.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/renderer/textureview/TextureViewRenderThread.java
@@ -2,6 +2,7 @@ package com.mapbox.mapboxsdk.maps.renderer.textureview;
import android.graphics.SurfaceTexture;
import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
import android.support.annotation.UiThread;
import android.view.TextureView;
import com.mapbox.mapboxsdk.log.Logger;
@@ -26,7 +27,9 @@ class TextureViewRenderThread extends Thread implements TextureView.SurfaceTextu
private static final String TAG = "Mbgl-TextureViewRenderThread";
+ @NonNull
private final TextureViewMapRenderer mapRenderer;
+ @NonNull
private final EGLHolder eglHolder;
// Lock used for synchronization
@@ -34,6 +37,7 @@ class TextureViewRenderThread extends Thread implements TextureView.SurfaceTextu
// Guarded by lock
private final ArrayList<Runnable> eventQueue = new ArrayList<>();
+ @Nullable
private SurfaceTexture surface;
private int width;
private int height;
@@ -118,7 +122,7 @@ class TextureViewRenderThread extends Thread implements TextureView.SurfaceTextu
/**
* May be called from any thread
*/
- void queueEvent(Runnable runnable) {
+ void queueEvent(@NonNull Runnable runnable) {
if (runnable == null) {
throw new IllegalArgumentException("runnable must not be null");
}
@@ -328,6 +332,7 @@ class TextureViewRenderThread extends Thread implements TextureView.SurfaceTextu
private boolean translucentSurface;
private EGL10 egl;
+ @Nullable
private EGLConfig eglConfig;
private EGLDisplay eglDisplay = EGL10.EGL_NO_DISPLAY;
private EGLContext eglContext = EGL10.EGL_NO_CONTEXT;
@@ -370,6 +375,7 @@ class TextureViewRenderThread extends Thread implements TextureView.SurfaceTextu
}
}
+ @NonNull
GL10 createGL() {
return (GL10) eglContext.getGL();
}
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java
index 45f72af1c5..9c800c078f 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/widgets/CompassView.java
@@ -3,6 +3,7 @@ package com.mapbox.mapboxsdk.maps.widgets;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
import android.support.v4.view.ViewCompat;
import android.support.v4.view.ViewPropertyAnimatorCompat;
import android.support.v4.view.ViewPropertyAnimatorListenerAdapter;
@@ -30,21 +31,22 @@ public final class CompassView extends AppCompatImageView implements Runnable {
private float rotation = 0.0f;
private boolean fadeCompassViewFacingNorth = true;
+ @Nullable
private ViewPropertyAnimatorCompat fadeAnimator;
private MapboxMap.OnCompassAnimationListener compassAnimationListener;
private boolean isAnimating = false;
- public CompassView(Context context) {
+ public CompassView(@NonNull Context context) {
super(context);
initialize(context);
}
- public CompassView(Context context, AttributeSet attrs) {
+ public CompassView(@NonNull Context context, AttributeSet attrs) {
super(context, attrs);
initialize(context);
}
- public CompassView(Context context, AttributeSet attrs, int defStyleAttr) {
+ public CompassView(@NonNull Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initialize(context);
}