Skip to content

Commit f28c864

Browse files
committed
mark maps classes with UiThread annotation
1 parent 059e9ce commit f28c864

20 files changed

Lines changed: 61 additions & 24 deletions

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Mapbox welcomes participation and contributions from everyone.
77
- Moved `MapboxAudioGuidance` and `MapboxAudioGuidanceState` into public api. [#6336](https://github.com/mapbox/mapbox-navigation-android/pull/6336)
88
- Introduced `ViewOptionsCustomization.showCameraDebugInfo` to allow end users to enable camera debug info. [#6356](https://github.com/mapbox/mapbox-navigation-android/pull/6356)
99
#### Bug fixes and improvements
10+
- Marked `PredictiveCacheController`, `MapboxBuildingView`, `ViewportDataSourceUpdateObserver`, `NavigationScaleGestureHandler`, `NavigationCameraStateChangedObserver`, `NavigationCameraStateTransition`, `NavigationCameraTransition`, `TransitionEndListener`, `MapboxRecenterButton`, `MapboxRouteOverviewButton`, `MapboxJunctionView`, `MapboxSignboardView`, `MapboxRoadNameLabelView`, `MapboxRoadNameView`, `MapboxRouteArrowView`, `MapboxRouteLineView`, `MapboxCameraModeButton` methods and `View.capture` extension with `@UiThread` annotation. [#6235](https://github.com/mapbox/mapbox-navigation-android/pull/6235)
1011

1112
## Mapbox Navigation SDK 2.9.0-alpha.2 - 16 September, 2022
1213
### Changelog

libnavui-maps/api/current.txt

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ package com.mapbox.navigation.ui.maps {
1111
field public static final String NAVIGATION_NIGHT_STYLE_USER_ID = "mapbox";
1212
}
1313

14-
public final class PredictiveCacheController {
14+
@UiThread public final class PredictiveCacheController {
1515
ctor public PredictiveCacheController(com.mapbox.navigation.base.options.PredictiveCacheOptions predictiveCacheOptions);
1616
ctor @Deprecated public PredictiveCacheController(com.mapbox.navigation.base.options.PredictiveCacheLocationOptions predictiveCacheLocationOptions = PredictiveCacheLocationOptions.<init>().build(), com.mapbox.navigation.ui.maps.PredictiveCacheControllerErrorHandler? predictiveCacheControllerErrorHandler = null);
1717
ctor @Deprecated public PredictiveCacheController(com.mapbox.navigation.base.options.PredictiveCacheLocationOptions predictiveCacheLocationOptions = PredictiveCacheLocationOptions.<init>().build(), com.mapbox.navigation.base.options.PredictiveCacheLocationOptions predictiveCacheGuidanceLocationOptions = PredictiveCacheLocationOptions.<init>().build(), com.mapbox.navigation.ui.maps.PredictiveCacheControllerErrorHandler? predictiveCacheControllerErrorHandler = null);
@@ -82,7 +82,7 @@ package com.mapbox.navigation.ui.maps.building.model {
8282

8383
package com.mapbox.navigation.ui.maps.building.view {
8484

85-
public final class MapboxBuildingView {
85+
@UiThread public final class MapboxBuildingView {
8686
ctor public MapboxBuildingView();
8787
method public void clear(com.mapbox.maps.Style style);
8888
method public void highlightBuilding(com.mapbox.maps.Style style, java.util.List<com.mapbox.maps.QueriedFeature> buildings, com.mapbox.navigation.ui.maps.building.model.MapboxBuildingHighlightOptions options = MapboxBuildingHighlightOptions.<init>().build());
@@ -322,7 +322,7 @@ package com.mapbox.navigation.ui.maps.camera.data {
322322
}
323323

324324
public fun interface ViewportDataSourceUpdateObserver {
325-
method public void viewportDataSourceUpdated(com.mapbox.navigation.ui.maps.camera.data.ViewportData viewportData);
325+
method @UiThread public void viewportDataSourceUpdated(com.mapbox.navigation.ui.maps.camera.data.ViewportData viewportData);
326326
}
327327

328328
}
@@ -355,10 +355,10 @@ package com.mapbox.navigation.ui.maps.camera.lifecycle {
355355

356356
public final class NavigationScaleGestureHandler implements com.mapbox.maps.plugin.animation.CameraAnimationsLifecycleListener {
357357
ctor public NavigationScaleGestureHandler(android.content.Context context, com.mapbox.navigation.ui.maps.camera.NavigationCamera navigationCamera, com.mapbox.maps.MapboxMap mapboxMap, com.mapbox.maps.plugin.gestures.GesturesPlugin gesturesPlugin, com.mapbox.maps.plugin.locationcomponent.LocationComponentPlugin locationPlugin, com.mapbox.navigation.ui.maps.camera.lifecycle.NavigationScaleGestureActionListener? scaleActionListener = null, com.mapbox.navigation.ui.maps.camera.lifecycle.NavigationScaleGestureHandlerOptions options = NavigationScaleGestureHandlerOptions.<init>(context).build());
358-
method public void cleanup();
358+
method @UiThread public void cleanup();
359359
method public com.mapbox.android.gestures.AndroidGesturesManager getCustomGesturesManager();
360360
method public com.mapbox.android.gestures.AndroidGesturesManager getInitialGesturesManager();
361-
method public void initialize();
361+
method @UiThread public void initialize();
362362
method public boolean isInitialized();
363363
method public void onAnimatorCancelling(com.mapbox.maps.plugin.animation.CameraAnimatorType type, android.animation.ValueAnimator animator, String? owner);
364364
method public void onAnimatorEnding(com.mapbox.maps.plugin.animation.CameraAnimatorType type, android.animation.ValueAnimator animator, String? owner);
@@ -400,7 +400,7 @@ package com.mapbox.navigation.ui.maps.camera.state {
400400
}
401401

402402
public fun interface NavigationCameraStateChangedObserver {
403-
method public void onNavigationCameraStateChanged(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState navigationCameraState);
403+
method @UiThread public void onNavigationCameraStateChanged(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState navigationCameraState);
404404
}
405405

406406
}
@@ -425,14 +425,14 @@ package com.mapbox.navigation.ui.maps.camera.transition {
425425
public final class MapboxNavigationCameraTransitionKt {
426426
}
427427

428-
public interface NavigationCameraStateTransition {
428+
@UiThread public interface NavigationCameraStateTransition {
429429
method public android.animation.AnimatorSet transitionToFollowing(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
430430
method public android.animation.AnimatorSet transitionToOverview(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
431431
method public android.animation.AnimatorSet updateFrameForFollowing(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
432432
method public android.animation.AnimatorSet updateFrameForOverview(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
433433
}
434434

435-
public interface NavigationCameraTransition {
435+
@UiThread public interface NavigationCameraTransition {
436436
method public android.animation.AnimatorSet transitionFromHighZoomToLowZoom(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
437437
method public android.animation.AnimatorSet transitionFromLowZoomToHighZoom(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
438438
method public android.animation.AnimatorSet transitionLinear(com.mapbox.maps.CameraOptions cameraOptions, com.mapbox.navigation.ui.maps.camera.transition.NavigationCameraTransitionOptions transitionOptions);
@@ -451,7 +451,7 @@ package com.mapbox.navigation.ui.maps.camera.transition {
451451
}
452452

453453
public fun interface TransitionEndListener {
454-
method public void onTransitionEnd(boolean isCanceled);
454+
method @UiThread public void onTransitionEnd(boolean isCanceled);
455455
}
456456

457457
}
@@ -465,7 +465,7 @@ package com.mapbox.navigation.ui.maps.camera.utils {
465465

466466
package com.mapbox.navigation.ui.maps.camera.view {
467467

468-
public final class MapboxRecenterButton extends androidx.constraintlayout.widget.ConstraintLayout {
468+
@UiThread public final class MapboxRecenterButton extends androidx.constraintlayout.widget.ConstraintLayout {
469469
ctor public MapboxRecenterButton(android.content.Context context);
470470
ctor public MapboxRecenterButton(android.content.Context context, android.util.AttributeSet? attrs);
471471
ctor public MapboxRecenterButton(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -474,7 +474,7 @@ package com.mapbox.navigation.ui.maps.camera.view {
474474
method public void updateStyle(@StyleRes int style);
475475
}
476476

477-
public final class MapboxRouteOverviewButton extends androidx.constraintlayout.widget.ConstraintLayout {
477+
@UiThread public final class MapboxRouteOverviewButton extends androidx.constraintlayout.widget.ConstraintLayout {
478478
ctor public MapboxRouteOverviewButton(android.content.Context context);
479479
ctor public MapboxRouteOverviewButton(android.content.Context context, android.util.AttributeSet? attrs);
480480
ctor public MapboxRouteOverviewButton(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -513,7 +513,7 @@ package com.mapbox.navigation.ui.maps.guidance.junction.model {
513513

514514
package com.mapbox.navigation.ui.maps.guidance.junction.view {
515515

516-
public final class MapboxJunctionView extends androidx.appcompat.widget.AppCompatImageView {
516+
@UiThread public final class MapboxJunctionView extends androidx.appcompat.widget.AppCompatImageView {
517517
ctor public MapboxJunctionView(android.content.Context context);
518518
ctor public MapboxJunctionView(android.content.Context context, android.util.AttributeSet? attrs);
519519
ctor public MapboxJunctionView(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -635,7 +635,7 @@ package com.mapbox.navigation.ui.maps.guidance.signboard.model {
635635

636636
package com.mapbox.navigation.ui.maps.guidance.signboard.view {
637637

638-
public final class MapboxSignboardView extends androidx.appcompat.widget.AppCompatImageView {
638+
@UiThread public final class MapboxSignboardView extends androidx.appcompat.widget.AppCompatImageView {
639639
ctor public MapboxSignboardView(android.content.Context context);
640640
ctor public MapboxSignboardView(android.content.Context context, android.util.AttributeSet? attrs);
641641
ctor public MapboxSignboardView(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -734,7 +734,7 @@ package com.mapbox.navigation.ui.maps.roadname.model {
734734

735735
package com.mapbox.navigation.ui.maps.roadname.view {
736736

737-
@Deprecated public final class MapboxRoadNameLabelView extends android.widget.LinearLayout {
737+
@Deprecated @UiThread public final class MapboxRoadNameLabelView extends android.widget.LinearLayout {
738738
ctor @Deprecated public MapboxRoadNameLabelView(android.content.Context context);
739739
ctor @Deprecated public MapboxRoadNameLabelView(android.content.Context context, android.util.AttributeSet? attrs);
740740
ctor @Deprecated public MapboxRoadNameLabelView(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -744,7 +744,7 @@ package com.mapbox.navigation.ui.maps.roadname.view {
744744
method @Deprecated public void updateRoadNameTextAppearance(@StyleRes int style);
745745
}
746746

747-
public final class MapboxRoadNameView extends androidx.appcompat.widget.AppCompatTextView {
747+
@UiThread public final class MapboxRoadNameView extends androidx.appcompat.widget.AppCompatTextView {
748748
ctor public MapboxRoadNameView(android.content.Context context);
749749
ctor public MapboxRoadNameView(android.content.Context context, android.util.AttributeSet? attrs);
750750
ctor public MapboxRoadNameView(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -778,7 +778,7 @@ package com.mapbox.navigation.ui.maps.route.arrow.api {
778778
method public com.mapbox.navigation.ui.maps.route.arrow.model.ArrowVisibilityChangeValue showManeuverArrow();
779779
}
780780

781-
public final class MapboxRouteArrowView {
781+
@UiThread public final class MapboxRouteArrowView {
782782
ctor public MapboxRouteArrowView(com.mapbox.navigation.ui.maps.route.arrow.model.RouteArrowOptions options);
783783
method public com.mapbox.maps.extension.style.layers.properties.generated.Visibility? getVisibility(com.mapbox.maps.Style style);
784784
method public void render(com.mapbox.maps.Style style, com.mapbox.navigation.ui.maps.route.arrow.model.ArrowVisibilityChangeValue visibilityChange);
@@ -933,7 +933,7 @@ package com.mapbox.navigation.ui.maps.route.line.api {
933933
public static final class MapboxRouteLineApi.Companion {
934934
}
935935

936-
public final class MapboxRouteLineView {
936+
@UiThread public final class MapboxRouteLineView {
937937
ctor public MapboxRouteLineView(com.mapbox.navigation.ui.maps.route.line.model.MapboxRouteLineOptions options);
938938
method public void cancel();
939939
method public com.mapbox.maps.extension.style.layers.properties.generated.Visibility? getAlternativeRoutesVisibility(com.mapbox.maps.Style style);
@@ -1410,15 +1410,15 @@ package com.mapbox.navigation.ui.maps.util {
14101410
}
14111411

14121412
public final class ViewUtils {
1413-
method public static void capture(android.view.View, com.mapbox.navigation.ui.maps.util.OnViewScreenshotReady callback);
1413+
method @UiThread public static void capture(android.view.View, com.mapbox.navigation.ui.maps.util.OnViewScreenshotReady callback);
14141414
field public static final com.mapbox.navigation.ui.maps.util.ViewUtils INSTANCE;
14151415
}
14161416

14171417
}
14181418

14191419
package com.mapbox.navigation.ui.maps.view {
14201420

1421-
@com.mapbox.navigation.base.ExperimentalPreviewMapboxNavigationAPI public final class MapboxCameraModeButton extends android.widget.FrameLayout {
1421+
@UiThread @com.mapbox.navigation.base.ExperimentalPreviewMapboxNavigationAPI public final class MapboxCameraModeButton extends android.widget.FrameLayout {
14221422
ctor public MapboxCameraModeButton(android.content.Context context);
14231423
ctor public MapboxCameraModeButton(android.content.Context context, android.util.AttributeSet? attrs);
14241424
ctor public MapboxCameraModeButton(android.content.Context context, android.util.AttributeSet? attrs, int defStyleAttr);
@@ -1434,9 +1434,9 @@ package com.mapbox.navigation.ui.maps.view {
14341434
method public void setFollowingText(String?);
14351435
method public void setOverviewIconResId(int);
14361436
method public void setOverviewText(String?);
1437-
method @UiThread public void setState(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state);
1438-
method @UiThread public void setStateAndExtend(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state, long duration = 2000L);
1439-
method @UiThread public void setStateAndExtend(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state);
1437+
method public void setState(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state);
1438+
method public void setStateAndExtend(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state, long duration = 2000L);
1439+
method public void setStateAndExtend(com.mapbox.navigation.ui.maps.camera.state.NavigationCameraState state);
14401440
method public void updateStyle(@StyleRes int style);
14411441
property public final androidx.constraintlayout.widget.ConstraintLayout containerView;
14421442
property public final int followingIconResId;

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/PredictiveCacheController.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.mapbox.navigation.ui.maps
22

3+
import androidx.annotation.UiThread
34
import com.mapbox.bindgen.Expected
45
import com.mapbox.bindgen.Value
56
import com.mapbox.common.TileStore
@@ -57,6 +58,7 @@ private const val RASTER_SOURCE_TYPE = "raster"
5758
*
5859
* @param predictiveCacheOptions [PredictiveCacheOptions] options to instantiate instance of [PredictiveCacheController]
5960
*/
61+
@UiThread
6062
class PredictiveCacheController constructor(
6163
private val predictiveCacheOptions: PredictiveCacheOptions,
6264
) {

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/building/view/MapboxBuildingView.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.mapbox.navigation.ui.maps.building.view
22

3+
import androidx.annotation.UiThread
34
import com.mapbox.maps.MapboxExperimental
45
import com.mapbox.maps.MapboxMap
56
import com.mapbox.maps.QueriedFeature
@@ -21,6 +22,7 @@ import com.mapbox.navigation.ui.maps.building.model.MapboxBuildingHighlightOptio
2122
* This means that if the data has not changed, it does not have to be manually redrawn after a style change.
2223
* See [Style.addPersistentStyleLayer].
2324
*/
25+
@UiThread
2426
class MapboxBuildingView {
2527

2628
/**

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/data/ViewportDataSourceUpdateObserver.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.mapbox.navigation.ui.maps.camera.data
22

3+
import androidx.annotation.UiThread
4+
35
/**
46
* Observer that gets notified whenever [ViewportData] changes.
57
*/
@@ -9,5 +11,6 @@ fun interface ViewportDataSourceUpdateObserver {
911
* Called whenever [ViewportData] changes.
1012
* @param viewportData latest data
1113
*/
14+
@UiThread
1215
fun viewportDataSourceUpdated(viewportData: ViewportData)
1316
}

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/lifecycle/NavigationScaleGestureHandler.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package com.mapbox.navigation.ui.maps.camera.lifecycle
22

33
import android.animation.ValueAnimator
44
import android.content.Context
5+
import androidx.annotation.UiThread
56
import com.mapbox.android.gestures.AndroidGesturesManager
67
import com.mapbox.android.gestures.MoveGestureDetector
78
import com.mapbox.geojson.Point
@@ -281,6 +282,7 @@ class NavigationScaleGestureHandler(
281282
*
282283
* @see cleanup
283284
*/
285+
@UiThread
284286
fun initialize() {
285287
gesturesPlugin.setGesturesManager(
286288
customGesturesManager,
@@ -306,6 +308,7 @@ class NavigationScaleGestureHandler(
306308
*
307309
* @see initialize
308310
*/
311+
@UiThread
309312
fun cleanup() {
310313
gesturesPlugin.setGesturesManager(
311314
initialGesturesManager,

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/state/NavigationCameraStateChangedObserver.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.mapbox.navigation.ui.maps.camera.state
22

3+
import androidx.annotation.UiThread
4+
35
/**
46
* Observer that gets notified whenever [NavigationCameraState] changes.
57
*/
@@ -9,5 +11,6 @@ fun interface NavigationCameraStateChangedObserver {
911
* Called whenever [NavigationCameraState] changes.
1012
* @param navigationCameraState current states
1113
*/
14+
@UiThread
1215
fun onNavigationCameraStateChanged(navigationCameraState: NavigationCameraState)
1316
}

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/transition/NavigationCameraStateTransition.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
package com.mapbox.navigation.ui.maps.camera.transition
22

33
import android.animation.AnimatorSet
4+
import androidx.annotation.UiThread
45
import com.mapbox.maps.CameraOptions
56

67
/**
78
* Helper interface to provide navigation camera state transitions.
89
*/
10+
@UiThread
911
interface NavigationCameraStateTransition {
1012
/**
1113
* Transition the camera to following state.

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/transition/NavigationCameraTransition.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
package com.mapbox.navigation.ui.maps.camera.transition
22

33
import android.animation.AnimatorSet
4+
import androidx.annotation.UiThread
45
import com.mapbox.maps.CameraOptions
56

67
/**
78
* Helper interface to provide camera transition animations.
89
*/
10+
@UiThread
911
interface NavigationCameraTransition {
1012
/**
1113
* This transition moves the camera from a zoomed out level to a zoomed in level.

libnavui-maps/src/main/java/com/mapbox/navigation/ui/maps/camera/transition/TransitionEndListener.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.mapbox.navigation.ui.maps.camera.transition
22

3+
import androidx.annotation.UiThread
34
import com.mapbox.navigation.ui.maps.camera.NavigationCamera
45

56
/**
@@ -12,5 +13,6 @@ fun interface TransitionEndListener {
1213
*
1314
* @param isCanceled whether the transition was canceled.
1415
*/
16+
@UiThread
1517
fun onTransitionEnd(isCanceled: Boolean)
1618
}

0 commit comments

Comments
 (0)