diff --git a/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/MapWayname.java b/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/MapWayname.java index 99dc2a2e20b..75826b20cff 100644 --- a/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/MapWayname.java +++ b/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/MapWayname.java @@ -30,6 +30,7 @@ class MapWayname { private MapPaddingAdjustor paddingAdjustor; private List currentStepPoints = new ArrayList<>(); private Location currentLocation = null; + private MapboxNavigation navigation; private final MapWaynameProgressChangeListener progressChangeListener = new MapWaynameProgressChangeListener(this); private boolean isAutoQueryEnabled; private boolean isVisible; @@ -95,13 +96,23 @@ String retrieveWayname() { } void addProgressChangeListener(MapboxNavigation navigation) { + this.navigation = navigation; navigation.addProgressChangeListener(progressChangeListener); } + void onStart() { + if (navigation != null) { + navigation.addProgressChangeListener(progressChangeListener); + } + } + void onStop() { if (isTaskRunning()) { filterTask.cancel(true); } + if (navigation != null) { + navigation.removeProgressChangeListener(progressChangeListener); + } } private List findRoadLabelFeatures(PointF point) { diff --git a/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/NavigationMapboxMap.java b/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/NavigationMapboxMap.java index bef697f84eb..d9a352d23b7 100644 --- a/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/NavigationMapboxMap.java +++ b/libandroid-navigation-ui/src/main/java/com/mapbox/services/android/navigation/ui/v5/map/NavigationMapboxMap.java @@ -396,6 +396,7 @@ public void onStart() { locationLayer.onStart(); mapCamera.onStart(); mapRoute.onStart(); + mapWayname.onStart(); } /**