@rnmapbox/maps 10.0.0-beta.58 → 10.0.0-beta.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/rctmgl/build.gradle +1 -1
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCamera.kt +5 -96
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.kt +1 -1
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/LocationComponentManager.kt +125 -0
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.kt +6 -10
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RenderMode.kt +21 -0
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.kt +36 -72
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.kt +10 -0
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +26 -5
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTLayer.kt +2 -7
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/LocationEvent.kt +75 -0
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/location/LocationManager.kt +66 -12
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLLocationModule.kt +147 -0
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/utils/extensions/CoordinateBounds.kt +3 -9
- package/ios/RCTMGL/RCTMGLLocation.m +1 -1
- package/ios/RCTMGL-v10/RCTMGLBackgroundLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLCircleLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLFillExtrustionLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLFillLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLHeatmapLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLLayer.swift +0 -2
- package/ios/RCTMGL-v10/RCTMGLLineLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLLocationModule.swift +1 -1
- package/ios/RCTMGL-v10/RCTMGLLogging.swift +10 -2
- package/ios/RCTMGL-v10/RCTMGLRasterLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLSkyLayer.swift +3 -1
- package/ios/RCTMGL-v10/RCTMGLStyle.swift +25 -15
- package/ios/RCTMGL-v10/RCTMGLSymbolLayer.swift +3 -1
- package/{assets → javascript/assets}/heading.png +0 -0
- package/{assets → javascript/assets}/heading@2x.png +0 -0
- package/{assets → javascript/assets}/heading@3x.png +0 -0
- package/javascript/components/Camera.tsx +1 -1
- package/javascript/components/HeadingIndicator.tsx +1 -1
- package/lib/commonjs/assets/heading.png +0 -0
- package/lib/commonjs/assets/heading@2x.png +0 -0
- package/lib/commonjs/assets/heading@3x.png +0 -0
- package/lib/commonjs/classes/AnimatedExtractCoordinateFromArray.js +3 -1
- package/lib/commonjs/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
- package/lib/commonjs/components/AbstractLayer.js +3 -1
- package/lib/commonjs/components/AbstractLayer.js.map +1 -1
- package/lib/commonjs/components/AbstractSource.js +3 -1
- package/lib/commonjs/components/AbstractSource.js.map +1 -1
- package/lib/commonjs/components/BackgroundLayer.js +3 -1
- package/lib/commonjs/components/BackgroundLayer.js.map +1 -1
- package/lib/commonjs/components/Callout.js +3 -1
- package/lib/commonjs/components/Callout.js.map +1 -1
- package/lib/commonjs/components/Camera.js.map +1 -1
- package/lib/commonjs/components/CircleLayer.js +3 -1
- package/lib/commonjs/components/CircleLayer.js.map +1 -1
- package/lib/commonjs/components/FillExtrusionLayer.js +3 -1
- package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -1
- package/lib/commonjs/components/FillLayer.js +3 -1
- package/lib/commonjs/components/FillLayer.js.map +1 -1
- package/lib/commonjs/components/HeadingIndicator.js +1 -1
- package/lib/commonjs/components/HeatmapLayer.js +3 -1
- package/lib/commonjs/components/HeatmapLayer.js.map +1 -1
- package/lib/commonjs/components/ImageSource.js +3 -1
- package/lib/commonjs/components/ImageSource.js.map +1 -1
- package/lib/commonjs/components/Images.js +3 -1
- package/lib/commonjs/components/Images.js.map +1 -1
- package/lib/commonjs/components/Light.js +3 -1
- package/lib/commonjs/components/Light.js.map +1 -1
- package/lib/commonjs/components/LineLayer.js +3 -1
- package/lib/commonjs/components/LineLayer.js.map +1 -1
- package/lib/commonjs/components/MapView.js +3 -1
- package/lib/commonjs/components/MapView.js.map +1 -1
- package/lib/commonjs/components/MarkerView.js +3 -1
- package/lib/commonjs/components/MarkerView.js.map +1 -1
- package/lib/commonjs/components/NativeBridgeComponent.js +3 -1
- package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
- package/lib/commonjs/components/NativeUserLocation.js +3 -1
- package/lib/commonjs/components/NativeUserLocation.js.map +1 -1
- package/lib/commonjs/components/PointAnnotation.js +3 -1
- package/lib/commonjs/components/PointAnnotation.js.map +1 -1
- package/lib/commonjs/components/RasterDemSource.js +3 -1
- package/lib/commonjs/components/RasterDemSource.js.map +1 -1
- package/lib/commonjs/components/RasterLayer.js +3 -1
- package/lib/commonjs/components/RasterLayer.js.map +1 -1
- package/lib/commonjs/components/RasterSource.js +3 -1
- package/lib/commonjs/components/RasterSource.js.map +1 -1
- package/lib/commonjs/components/ShapeSource.js +3 -1
- package/lib/commonjs/components/ShapeSource.js.map +1 -1
- package/lib/commonjs/components/SkyLayer.js +3 -1
- package/lib/commonjs/components/SkyLayer.js.map +1 -1
- package/lib/commonjs/components/SymbolLayer.js +3 -1
- package/lib/commonjs/components/SymbolLayer.js.map +1 -1
- package/lib/commonjs/components/UserLocation.js +3 -1
- package/lib/commonjs/components/UserLocation.js.map +1 -1
- package/lib/commonjs/components/VectorSource.js +3 -1
- package/lib/commonjs/components/VectorSource.js.map +1 -1
- package/lib/commonjs/components/annotations/Annotation.js +3 -1
- package/lib/commonjs/components/annotations/Annotation.js.map +1 -1
- package/lib/commonjs/utils/BridgeValue.js +3 -1
- package/lib/commonjs/utils/BridgeValue.js.map +1 -1
- package/lib/commonjs/utils/Logger.js +3 -1
- package/lib/commonjs/utils/Logger.js.map +1 -1
- package/lib/commonjs/web/components/Camera.js +3 -1
- package/lib/commonjs/web/components/Camera.js.map +1 -1
- package/lib/commonjs/web/components/MapView.js +3 -1
- package/lib/commonjs/web/components/MapView.js.map +1 -1
- package/lib/commonjs/web/utils/Logger.js +3 -1
- package/lib/commonjs/web/utils/Logger.js.map +1 -1
- package/lib/module/assets/heading.png +0 -0
- package/lib/module/assets/heading@2x.png +0 -0
- package/lib/module/assets/heading@3x.png +0 -0
- package/lib/module/classes/AnimatedExtractCoordinateFromArray.js +3 -1
- package/lib/module/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
- package/lib/module/components/AbstractLayer.js +3 -1
- package/lib/module/components/AbstractLayer.js.map +1 -1
- package/lib/module/components/AbstractSource.js +3 -1
- package/lib/module/components/AbstractSource.js.map +1 -1
- package/lib/module/components/BackgroundLayer.js +3 -1
- package/lib/module/components/BackgroundLayer.js.map +1 -1
- package/lib/module/components/Callout.js +3 -1
- package/lib/module/components/Callout.js.map +1 -1
- package/lib/module/components/Camera.js.map +1 -1
- package/lib/module/components/CircleLayer.js +3 -1
- package/lib/module/components/CircleLayer.js.map +1 -1
- package/lib/module/components/FillExtrusionLayer.js +3 -1
- package/lib/module/components/FillExtrusionLayer.js.map +1 -1
- package/lib/module/components/FillLayer.js +3 -1
- package/lib/module/components/FillLayer.js.map +1 -1
- package/lib/module/components/HeadingIndicator.js +1 -1
- package/lib/module/components/HeadingIndicator.js.map +1 -1
- package/lib/module/components/HeatmapLayer.js +3 -1
- package/lib/module/components/HeatmapLayer.js.map +1 -1
- package/lib/module/components/ImageSource.js +3 -1
- package/lib/module/components/ImageSource.js.map +1 -1
- package/lib/module/components/Images.js +3 -1
- package/lib/module/components/Images.js.map +1 -1
- package/lib/module/components/Light.js +3 -1
- package/lib/module/components/Light.js.map +1 -1
- package/lib/module/components/LineLayer.js +3 -1
- package/lib/module/components/LineLayer.js.map +1 -1
- package/lib/module/components/MapView.js +3 -1
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/components/MarkerView.js +3 -1
- package/lib/module/components/MarkerView.js.map +1 -1
- package/lib/module/components/NativeBridgeComponent.js +3 -1
- package/lib/module/components/NativeBridgeComponent.js.map +1 -1
- package/lib/module/components/NativeUserLocation.js +3 -1
- package/lib/module/components/NativeUserLocation.js.map +1 -1
- package/lib/module/components/PointAnnotation.js +3 -1
- package/lib/module/components/PointAnnotation.js.map +1 -1
- package/lib/module/components/RasterDemSource.js +3 -1
- package/lib/module/components/RasterDemSource.js.map +1 -1
- package/lib/module/components/RasterLayer.js +3 -1
- package/lib/module/components/RasterLayer.js.map +1 -1
- package/lib/module/components/RasterSource.js +3 -1
- package/lib/module/components/RasterSource.js.map +1 -1
- package/lib/module/components/ShapeSource.js +3 -1
- package/lib/module/components/ShapeSource.js.map +1 -1
- package/lib/module/components/SkyLayer.js +3 -1
- package/lib/module/components/SkyLayer.js.map +1 -1
- package/lib/module/components/SymbolLayer.js +3 -1
- package/lib/module/components/SymbolLayer.js.map +1 -1
- package/lib/module/components/UserLocation.js +3 -1
- package/lib/module/components/UserLocation.js.map +1 -1
- package/lib/module/components/VectorSource.js +3 -1
- package/lib/module/components/VectorSource.js.map +1 -1
- package/lib/module/components/annotations/Annotation.js +3 -1
- package/lib/module/components/annotations/Annotation.js.map +1 -1
- package/lib/module/utils/BridgeValue.js +3 -1
- package/lib/module/utils/BridgeValue.js.map +1 -1
- package/lib/module/utils/Logger.js +3 -1
- package/lib/module/utils/Logger.js.map +1 -1
- package/lib/module/web/components/Camera.js +3 -1
- package/lib/module/web/components/Camera.js.map +1 -1
- package/lib/module/web/components/MapView.js +3 -1
- package/lib/module/web/components/MapView.js.map +1 -1
- package/lib/module/web/utils/Logger.js +3 -1
- package/lib/module/web/utils/Logger.js.map +1 -1
- package/lib/typescript/components/Camera.d.ts +1 -1
- package/lib/typescript/components/Camera.d.ts.map +1 -1
- package/package.json +6 -5
- package/plugin/build/generateCode.d.ts +42 -0
- package/plugin/build/generateCode.js +107 -0
- package/plugin/build/withMapbox.d.ts +1 -1
- package/plugin/build/withMapbox.js +3 -3
- package/plugin/src/generateCode.ts +155 -0
- package/plugin/src/withMapbox.ts +3 -5
- package/rnmapbox-maps.podspec +1 -1
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/LocationComponentManager.java +0 -215
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/location/RenderMode.java +0 -42
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/events/LocationEvent.java +0 -100
- package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java +0 -160
|
@@ -130,7 +130,7 @@ dependencies {
|
|
|
130
130
|
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-turf:5.1.0'
|
|
131
131
|
}
|
|
132
132
|
else if (safeExtGet("RNMapboxMapsImpl", defaultMapboxMapsImpl) == "mapbox") {
|
|
133
|
-
implementation 'com.mapbox.maps:android:10.9.
|
|
133
|
+
implementation 'com.mapbox.maps:android:10.9.1'
|
|
134
134
|
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-turf:6.8.0'
|
|
135
135
|
implementation 'androidx.asynclayoutinflater:asynclayoutinflater:1.0.0'
|
|
136
136
|
}
|
package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCamera.kt
CHANGED
|
@@ -77,15 +77,7 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
77
77
|
private var mMaxBounds: LatLngBounds? = null
|
|
78
78
|
private var mFollowUserLocation = false
|
|
79
79
|
private var mFollowUserMode: String? = null
|
|
80
|
-
|
|
81
|
-
override fun onLocationChange(nextLocation: Location?) {
|
|
82
|
-
if (mapboxMap == null || mLocationComponentManager == null || !mLocationComponentManager!!.hasLocationComponent() || !mFollowUserLocation) {
|
|
83
|
-
return
|
|
84
|
-
}
|
|
85
|
-
mUserLocation.currentLocation = nextLocation
|
|
86
|
-
sendUserLocationUpdateEvent(toPoint(nextLocation!!))
|
|
87
|
-
}
|
|
88
|
-
}
|
|
80
|
+
|
|
89
81
|
private val mLocationBearingChangedListener = OnIndicatorBearingChangedListener { v ->
|
|
90
82
|
if (mFollowUserLocation) {
|
|
91
83
|
mMapView!!.getMapboxMap().setCamera(CameraOptions.Builder().bearing(v).build())
|
|
@@ -95,7 +87,6 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
95
87
|
if (mFollowUserLocation) {
|
|
96
88
|
mMapView!!.getMapboxMap().setCamera(CameraOptions.Builder().center(point).build())
|
|
97
89
|
mMapView!!.gestures.focalPoint = mMapView!!.getMapboxMap().pixelForCoordinate(point)
|
|
98
|
-
sendUserLocationUpdateEvent(point)
|
|
99
90
|
}
|
|
100
91
|
}
|
|
101
92
|
private val mCameraCallback: Animator.AnimatorListener = object : Animator.AnimatorListener {
|
|
@@ -122,10 +113,7 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
122
113
|
setInitialCamera()
|
|
123
114
|
updateMaxBounds()
|
|
124
115
|
mCameraStop?.let { updateCamera(it) }
|
|
125
|
-
|
|
126
|
-
// updateFollowLocation(mFollowUserLocation);
|
|
127
|
-
enableLocation()
|
|
128
|
-
}
|
|
116
|
+
_updateViewportState();
|
|
129
117
|
}
|
|
130
118
|
|
|
131
119
|
override fun removeFromMap(mapView: RCTMGLMapView) {
|
|
@@ -221,18 +209,6 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
221
209
|
return direction
|
|
222
210
|
}
|
|
223
211
|
|
|
224
|
-
private fun sendUserLocationUpdateEvent(point: Point?) {
|
|
225
|
-
if (point == null) {
|
|
226
|
-
return
|
|
227
|
-
}
|
|
228
|
-
val event: IEvent = MapChangeEvent(
|
|
229
|
-
this, EventTypes.USER_LOCATION_UPDATED, makeLocationChangePayload(
|
|
230
|
-
toLocation(point)
|
|
231
|
-
)
|
|
232
|
-
)
|
|
233
|
-
mManager.handleEvent(event)
|
|
234
|
-
}
|
|
235
|
-
|
|
236
212
|
private fun hasSetCenterCoordinate(): Boolean {
|
|
237
213
|
val state = mapboxMap!!.cameraState
|
|
238
214
|
val center = state.center
|
|
@@ -244,78 +220,11 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
244
220
|
mLocationManager = getInstance(mContext)
|
|
245
221
|
}
|
|
246
222
|
|
|
247
|
-
private fun enableLocation() {
|
|
248
|
-
if (!PermissionsManager.areLocationPermissionsGranted(mContext)) {
|
|
249
|
-
return
|
|
250
|
-
}
|
|
251
|
-
if (!mLocationManager!!.isActive()) {
|
|
252
|
-
mLocationManager.enable()
|
|
253
|
-
}
|
|
254
|
-
mMapView!!.getMapboxMap().getStyle {
|
|
255
|
-
enableLocationComponent(it)
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
private fun enableLocationComponent(style: Style) {
|
|
260
|
-
updateUserLocation(false)
|
|
261
|
-
updateLocationLayer(style)
|
|
262
|
-
val lastKnownLocation = mLocationManager!!.lastKnownLocation
|
|
263
|
-
mLocationManager.addLocationListener(mLocationChangeListener)
|
|
264
|
-
if (lastKnownLocation != null) {
|
|
265
|
-
mLocationChangeListener.onLocationChange(lastKnownLocation)
|
|
266
|
-
postDelayed({ mMapView!!.sendRegionDidChangeEvent() }, 200)
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
|
|
270
223
|
private fun updateLocationLayer(style: Style) {
|
|
271
224
|
if (mLocationComponentManager == null) {
|
|
272
225
|
mLocationComponentManager = mMapView!!.locationComponentManager
|
|
273
226
|
}
|
|
274
227
|
mLocationComponentManager!!.update(style)
|
|
275
|
-
if (mFollowUserLocation) {
|
|
276
|
-
mLocationComponentManager!!.setCameraMode(
|
|
277
|
-
UserTrackingMode.getCameraMode(
|
|
278
|
-
mUserTrackingMode
|
|
279
|
-
)
|
|
280
|
-
)
|
|
281
|
-
}
|
|
282
|
-
mLocationComponentManager!!.setFollowUserLocation(mFollowUserLocation)
|
|
283
|
-
if (mFollowUserLocation) {
|
|
284
|
-
mLocationComponentManager!!.setCameraMode(
|
|
285
|
-
UserTrackingMode.getCameraMode(
|
|
286
|
-
mUserTrackingMode
|
|
287
|
-
)
|
|
288
|
-
)
|
|
289
|
-
|
|
290
|
-
/*
|
|
291
|
-
mLocationComponentManager.addOnCameraTrackingChangedListener(new OnCameraTrackingChangedListener() {
|
|
292
|
-
@Override public void onCameraTrackingChanged(int currentMode) {
|
|
293
|
-
int userTrackingMode = UserTrackingMode.NONE;
|
|
294
|
-
switch (currentMode) {
|
|
295
|
-
case CameraMode.NONE:
|
|
296
|
-
userTrackingMode = UserTrackingMode.NONE;
|
|
297
|
-
break;
|
|
298
|
-
case CameraMode.TRACKING:
|
|
299
|
-
userTrackingMode = UserTrackingMode.FOLLOW;
|
|
300
|
-
break;
|
|
301
|
-
case CameraMode.TRACKING_COMPASS:
|
|
302
|
-
userTrackingMode = UserTrackingMode.FollowWithHeading;
|
|
303
|
-
break;
|
|
304
|
-
case CameraMode.TRACKING_GPS:
|
|
305
|
-
userTrackingMode = UserTrackingMode.FollowWithCourse;
|
|
306
|
-
break;
|
|
307
|
-
default:
|
|
308
|
-
userTrackingMode = UserTrackingMode.NONE;
|
|
309
|
-
}
|
|
310
|
-
updateUserTrackingMode(userTrackingMode);
|
|
311
|
-
}
|
|
312
|
-
@Override public void onCameraTrackingDismissed() {
|
|
313
|
-
}
|
|
314
|
-
});
|
|
315
|
-
*/
|
|
316
|
-
} else {
|
|
317
|
-
mLocationComponentManager!!.setCameraMode(com.mapbox.rctmgl.components.location.CameraMode.NONE)
|
|
318
|
-
}
|
|
319
228
|
}
|
|
320
229
|
|
|
321
230
|
fun setMinZoomLevel(zoomLevel: Double?) {
|
|
@@ -383,16 +292,16 @@ class RCTMGLCamera(private val mContext: Context, private val mManager: RCTMGLCa
|
|
|
383
292
|
val viewport = map.viewport;
|
|
384
293
|
if (mFollowUserLocation == false) {
|
|
385
294
|
viewport.idle()
|
|
386
|
-
|
|
295
|
+
mLocationComponentManager?.setFollowLocation(false)
|
|
387
296
|
return;
|
|
388
297
|
}
|
|
389
298
|
|
|
299
|
+
mLocationComponentManager?.setFollowLocation(true)
|
|
390
300
|
mLocationManager?.let {
|
|
391
|
-
val provider = it.provider
|
|
392
301
|
|
|
302
|
+
val provider = it.provider
|
|
393
303
|
map.location.setLocationProvider(provider);
|
|
394
304
|
map.location2.setLocationProvider(provider);
|
|
395
|
-
it.enable();
|
|
396
305
|
}
|
|
397
306
|
|
|
398
307
|
val location = map.location2
|
package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.kt
CHANGED
|
@@ -49,7 +49,7 @@ class RCTMGLCameraManager(private val mContext: ReactApplicationContext) :
|
|
|
49
49
|
throw AssertionError("Unused code")
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
@ReactProp(name = "
|
|
52
|
+
@ReactProp(name = "zoomLevel")
|
|
53
53
|
fun setZoomLevel(camera: RCTMGLCamera, zoomLevel: Double) {
|
|
54
54
|
camera.setZoomLevel(zoomLevel)
|
|
55
55
|
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
package com.mapbox.rctmgl.components.location
|
|
2
|
+
|
|
3
|
+
import android.content.Context
|
|
4
|
+
import android.graphics.Color
|
|
5
|
+
import android.graphics.drawable.VectorDrawable
|
|
6
|
+
import androidx.appcompat.content.res.AppCompatResources
|
|
7
|
+
import com.mapbox.maps.plugin.locationcomponent.location
|
|
8
|
+
import com.mapbox.rctmgl.components.mapview.RCTMGLMapView
|
|
9
|
+
import com.mapbox.maps.Style
|
|
10
|
+
import com.mapbox.maps.plugin.LocationPuck2D
|
|
11
|
+
import com.mapbox.rctmgl.R
|
|
12
|
+
import com.mapbox.rctmgl.location.LocationManager
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* The LocationComponent on android implements display of user's current location.
|
|
16
|
+
* But viewport seems to be tied to it in the sense that if location is not enbabled then it's viewport user tracking is not working.
|
|
17
|
+
* LocationComponentManager attempts to separate that, so that Camera can ask for location tracking independent of display of user current location.
|
|
18
|
+
* And NativeUserLocation can ask for display of user's current location - independent of Camera's user tracking.
|
|
19
|
+
*/
|
|
20
|
+
class LocationComponentManager(mapView: RCTMGLMapView, context: Context) {
|
|
21
|
+
private var mShowNativeUserLocation = false
|
|
22
|
+
private var mFollowLocation = false
|
|
23
|
+
var mMapView = mapView
|
|
24
|
+
var mContext = context
|
|
25
|
+
var mState = State(enabled=true, hidden=false, tintColor= null)
|
|
26
|
+
var mLocationManager: LocationManager? = LocationManager.getInstance(context!!)
|
|
27
|
+
|
|
28
|
+
data class State(
|
|
29
|
+
val enabled: Boolean, // in case followUserLocation is active or visible
|
|
30
|
+
val hidden: Boolean, // in case it isn't native
|
|
31
|
+
val tintColor: Int?, // tint of location puck
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
fun showNativeUserLocation(showUserLocation: Boolean) {
|
|
35
|
+
mShowNativeUserLocation = showUserLocation
|
|
36
|
+
|
|
37
|
+
_applyChanges()
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
fun setFollowLocation(followLoation: Boolean) {
|
|
41
|
+
mFollowLocation = followLoation
|
|
42
|
+
|
|
43
|
+
_applyChanges()
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
fun update(style: Style) {
|
|
47
|
+
_applyChanges()
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
fun setRenderMode(renderMode: RenderMode) {
|
|
51
|
+
_applyChanges()
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
fun _applyChanges() {
|
|
55
|
+
mMapView?.let {
|
|
56
|
+
val newState = State(
|
|
57
|
+
enabled = mShowNativeUserLocation || mFollowLocation,
|
|
58
|
+
hidden = !mShowNativeUserLocation,
|
|
59
|
+
tintColor = mMapView!!.tintColor,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
if (! mState.equals(newState)) {
|
|
63
|
+
it.location.updateSettings {
|
|
64
|
+
val trackLocation = true
|
|
65
|
+
enabled = newState.enabled
|
|
66
|
+
|
|
67
|
+
if ((newState.hidden != mState.hidden) || (newState.tintColor != mState.tintColor)) {
|
|
68
|
+
if (newState.hidden) {
|
|
69
|
+
var emptyLocationPuck = LocationPuck2D()
|
|
70
|
+
val empty = AppCompatResources.getDrawable(mContext!!, R.drawable.empty)
|
|
71
|
+
emptyLocationPuck.bearingImage = empty
|
|
72
|
+
emptyLocationPuck.shadowImage = empty
|
|
73
|
+
emptyLocationPuck.topImage = empty
|
|
74
|
+
//emptyLocationPuck.opacity = 0.0
|
|
75
|
+
locationPuck = emptyLocationPuck
|
|
76
|
+
pulsingEnabled = false
|
|
77
|
+
} else {
|
|
78
|
+
val mapboxBlueColor = Color.parseColor("#4A90E2")
|
|
79
|
+
val tintColor = newState.tintColor
|
|
80
|
+
val defaultLocationPuck = LocationPuck2D()
|
|
81
|
+
var topImage = AppCompatResources.getDrawable(mContext!!, R.drawable.mapbox_user_icon)
|
|
82
|
+
if (tintColor != null) {
|
|
83
|
+
val drawable = topImage as VectorDrawable?
|
|
84
|
+
drawable!!.setTint(tintColor)
|
|
85
|
+
topImage = drawable
|
|
86
|
+
}
|
|
87
|
+
defaultLocationPuck.topImage = topImage
|
|
88
|
+
val bearingImage = AppCompatResources.getDrawable(
|
|
89
|
+
mContext!!, R.drawable.mapbox_user_stroke_icon
|
|
90
|
+
)
|
|
91
|
+
defaultLocationPuck.bearingImage = bearingImage
|
|
92
|
+
val shadowImage = AppCompatResources.getDrawable(
|
|
93
|
+
mContext!!, R.drawable.mapbox_user_icon_shadow
|
|
94
|
+
)
|
|
95
|
+
defaultLocationPuck.shadowImage = shadowImage
|
|
96
|
+
locationPuck = defaultLocationPuck
|
|
97
|
+
pulsingEnabled = true
|
|
98
|
+
if (tintColor != null) {
|
|
99
|
+
pulsingColor = tintColor
|
|
100
|
+
} else {
|
|
101
|
+
pulsingColor = mapboxBlueColor
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (newState.enabled != mState.enabled) {
|
|
108
|
+
if (newState.enabled) {
|
|
109
|
+
mLocationManager?.startCounted()
|
|
110
|
+
val provider = mLocationManager?.provider
|
|
111
|
+
if (provider != null) {
|
|
112
|
+
it.location.setLocationProvider(provider)
|
|
113
|
+
}
|
|
114
|
+
} else {
|
|
115
|
+
mLocationManager?.stopCounted()
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
mState = newState;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -9,27 +9,23 @@ import com.mapbox.maps.Style
|
|
|
9
9
|
import com.mapbox.rctmgl.components.AbstractMapFeature
|
|
10
10
|
import com.mapbox.rctmgl.components.mapview.RCTMGLMapView
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
import com.mapbox.mapboxsdk.location.modes.RenderMode;
|
|
14
|
-
import com.mapbox.mapboxsdk.maps.MapboxMap;
|
|
15
|
-
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
|
|
16
|
-
import com.mapbox.mapboxsdk.maps.Style;
|
|
17
|
-
*/ class RCTMGLNativeUserLocation(context: Context?) : AbstractMapFeature(context), OnMapReadyCallback, Style.OnStyleLoaded {
|
|
12
|
+
class RCTMGLNativeUserLocation(context: Context?) : AbstractMapFeature(context), OnMapReadyCallback, Style.OnStyleLoaded {
|
|
18
13
|
private var mEnabled = true
|
|
19
14
|
private var mMap: MapboxMap? = null
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
private var mRenderMode = RenderMode.COMPASS
|
|
16
|
+
private var mRenderMode : RenderMode = RenderMode.COMPASS
|
|
23
17
|
override fun addToMap(mapView: RCTMGLMapView) {
|
|
24
18
|
super.addToMap(mapView)
|
|
25
19
|
mEnabled = true
|
|
26
20
|
mapView.getMapboxMap()
|
|
27
21
|
mapView.getMapAsync(this)
|
|
28
22
|
setRenderMode(mRenderMode)
|
|
23
|
+
mMapView?.locationComponentManager?.showNativeUserLocation(true)
|
|
29
24
|
}
|
|
30
25
|
|
|
31
26
|
override fun removeFromMap(mapView: RCTMGLMapView) {
|
|
32
27
|
mEnabled = false
|
|
28
|
+
mMapView?.locationComponentManager?.showNativeUserLocation(false)
|
|
33
29
|
mMap?.getStyle(this)
|
|
34
30
|
super.removeFromMap(mapView)
|
|
35
31
|
}
|
|
@@ -48,10 +44,10 @@ import com.mapbox.mapboxsdk.maps.Style;
|
|
|
48
44
|
}
|
|
49
45
|
|
|
50
46
|
mMapView?.locationComponentManager?.update(style)
|
|
51
|
-
mMapView?.locationComponentManager?.
|
|
47
|
+
mMapView?.locationComponentManager?.showNativeUserLocation(mEnabled)
|
|
52
48
|
}
|
|
53
49
|
|
|
54
|
-
fun setRenderMode(
|
|
50
|
+
fun setRenderMode(renderMode: RenderMode) {
|
|
55
51
|
mRenderMode = renderMode
|
|
56
52
|
mMapView?.locationComponentManager?.setRenderMode(renderMode)
|
|
57
53
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
package com.mapbox.rctmgl.components.location
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Contains the variety of ways the user location can be rendered on the map.
|
|
5
|
+
*/
|
|
6
|
+
enum class RenderMode {
|
|
7
|
+
/**
|
|
8
|
+
* Basic tracking is enabled, bearing ignored.
|
|
9
|
+
*/
|
|
10
|
+
NORMAL,
|
|
11
|
+
/**
|
|
12
|
+
* Tracking the user location with bearing considered
|
|
13
|
+
* from a [CompassEngine].
|
|
14
|
+
*/
|
|
15
|
+
COMPASS,
|
|
16
|
+
/**
|
|
17
|
+
* Tracking the user location with bearing considered from [android.location.Location].
|
|
18
|
+
*/
|
|
19
|
+
GPS
|
|
20
|
+
}
|
|
21
|
+
|
package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.kt
CHANGED
|
@@ -713,7 +713,7 @@ open class RCTMGLMapView(private val mContext: Context, var mManager: RCTMGLMapV
|
|
|
713
713
|
val density: Float = getDisplayDensity()
|
|
714
714
|
val screenCoordinate = ScreenCoordinate(pixel.x * density, pixel.y * density)
|
|
715
715
|
|
|
716
|
-
val coordinate = mMap!!.coordinateForPixel(
|
|
716
|
+
val coordinate = mMap!!.coordinateForPixel(screenCoordinate)
|
|
717
717
|
|
|
718
718
|
sendResponse(callbackID, {
|
|
719
719
|
it.putArray("coordinateFromView", coordinate.toReadableArray())
|
|
@@ -1069,48 +1069,33 @@ open class RCTMGLMapView(private val mContext: Context, var mManager: RCTMGLMapV
|
|
|
1069
1069
|
}
|
|
1070
1070
|
|
|
1071
1071
|
// region Attribution
|
|
1072
|
-
|
|
1073
|
-
private var mAttributionGravity: Int? = null
|
|
1074
|
-
private var mAttributionMargin: IntArray? = null
|
|
1072
|
+
var mAttributionSettings = OrnamentSettings(enabled = AttributionSettings().enabled)
|
|
1075
1073
|
|
|
1076
1074
|
fun setReactAttributionEnabled(attributionEnabled: Boolean?) {
|
|
1077
|
-
|
|
1075
|
+
mAttributionSettings.enabled = attributionEnabled
|
|
1078
1076
|
updateAttribution()
|
|
1079
1077
|
}
|
|
1080
1078
|
|
|
1081
|
-
fun
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
val defaultOptions = AttributionSettings()
|
|
1086
|
-
mAttributionGravity = defaultOptions.position
|
|
1087
|
-
mAttributionMargin = intArrayOf(defaultOptions.marginLeft.toInt(),defaultOptions.marginTop.toInt(),defaultOptions.marginRight.toInt(),defaultOptions.marginBottom.toInt())
|
|
1088
|
-
updateAttribution()
|
|
1089
|
-
}
|
|
1090
|
-
return
|
|
1091
|
-
}
|
|
1079
|
+
fun setReactAttributionViewMargins(margins: ReadableMap) {
|
|
1080
|
+
mAttributionSettings.margins = margins
|
|
1081
|
+
updateAttribution()
|
|
1082
|
+
}
|
|
1092
1083
|
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1084
|
+
fun setReactAttributionViewPosition(position: Int) {
|
|
1085
|
+
mAttributionSettings.position = position
|
|
1086
|
+
updateAttribution()
|
|
1087
|
+
}
|
|
1088
|
+
|
|
1089
|
+
fun setReactAttributionPosition(position: ReadableMap?) {
|
|
1090
|
+
mAttributionSettings.setPosAndMargins(position)
|
|
1096
1091
|
updateAttribution()
|
|
1097
1092
|
}
|
|
1098
1093
|
|
|
1099
1094
|
private fun updateAttribution() {
|
|
1100
1095
|
attribution.updateSettings {
|
|
1101
|
-
|
|
1102
|
-
enabled = mAttributionEnabled!!
|
|
1103
|
-
}
|
|
1104
|
-
if(mAttributionGravity != null){
|
|
1105
|
-
position = mAttributionGravity!!
|
|
1106
|
-
}
|
|
1107
|
-
if(mAttributionMargin != null){
|
|
1108
|
-
marginLeft = mAttributionMargin!![0].toFloat()
|
|
1109
|
-
marginTop = mAttributionMargin!![1].toFloat()
|
|
1110
|
-
marginRight = mAttributionMargin!![2].toFloat()
|
|
1111
|
-
marginBottom = mAttributionMargin!![3].toFloat()
|
|
1112
|
-
}
|
|
1096
|
+
updateOrnament("attribution", mAttributionSettings, this.toGenericOrnamentSettings())
|
|
1113
1097
|
}
|
|
1098
|
+
workaroundToRelayoutChildOfMapView()
|
|
1114
1099
|
}
|
|
1115
1100
|
//endregion
|
|
1116
1101
|
|
|
@@ -1147,46 +1132,6 @@ open class RCTMGLMapView(private val mContext: Context, var mManager: RCTMGLMapV
|
|
|
1147
1132
|
}
|
|
1148
1133
|
workaroundToRelayoutChildOfMapView()
|
|
1149
1134
|
}
|
|
1150
|
-
/*
|
|
1151
|
-
fun setReactLogoEnabled(logoEnabled: Boolean?) {
|
|
1152
|
-
mLogoEnabled = logoEnabled ?: LogoSettings().enabled
|
|
1153
|
-
updateLogo()
|
|
1154
|
-
}
|
|
1155
|
-
|
|
1156
|
-
fun setReactLogoPosition(position: ReadableMap?) {
|
|
1157
|
-
if (position == null) {
|
|
1158
|
-
// reset from explicit to default
|
|
1159
|
-
if (mLogoGravity != null) {
|
|
1160
|
-
val defaultOptions = LogoSettings()
|
|
1161
|
-
mLogoGravity = defaultOptions.position
|
|
1162
|
-
mLogoMargin = intArrayOf(defaultOptions.marginLeft.toInt(),defaultOptions.marginTop.toInt(),defaultOptions.marginRight.toInt(),defaultOptions.marginBottom.toInt())
|
|
1163
|
-
updateLogo()
|
|
1164
|
-
}
|
|
1165
|
-
return
|
|
1166
|
-
}
|
|
1167
|
-
val (logoGravity, logoMargin) = getGravityAndMargin(position)
|
|
1168
|
-
mLogoGravity = logoGravity
|
|
1169
|
-
mLogoMargin = logoMargin
|
|
1170
|
-
updateLogo()
|
|
1171
|
-
}
|
|
1172
|
-
|
|
1173
|
-
private fun updateLogo() {
|
|
1174
|
-
logo.updateSettings {
|
|
1175
|
-
if(mLogoEnabled != null){
|
|
1176
|
-
enabled = mLogoEnabled!!
|
|
1177
|
-
}
|
|
1178
|
-
if(mLogoGravity != null){
|
|
1179
|
-
position = mLogoGravity!!
|
|
1180
|
-
}
|
|
1181
|
-
if(mLogoMargin != null){
|
|
1182
|
-
marginLeft = mLogoMargin!![0].toFloat()
|
|
1183
|
-
marginTop = mLogoMargin!![1].toFloat()
|
|
1184
|
-
marginRight = mLogoMargin!![2].toFloat()
|
|
1185
|
-
marginBottom = mLogoMargin!![3].toFloat()
|
|
1186
|
-
}
|
|
1187
|
-
}
|
|
1188
|
-
}
|
|
1189
|
-
*/
|
|
1190
1135
|
// endregion
|
|
1191
1136
|
|
|
1192
1137
|
// region lifecycle
|
|
@@ -1332,7 +1277,26 @@ fun LogoSettings.toGenericOrnamentSettings() = object : GenericOrnamentSettings
|
|
|
1332
1277
|
override var position: Int
|
|
1333
1278
|
get() = settings.position
|
|
1334
1279
|
set(value) {
|
|
1335
|
-
|
|
1280
|
+
settings.position = value
|
|
1281
|
+
}
|
|
1282
|
+
}
|
|
1283
|
+
|
|
1284
|
+
fun AttributionSettings.toGenericOrnamentSettings() = object : GenericOrnamentSettings {
|
|
1285
|
+
private var settings = this@toGenericOrnamentSettings;
|
|
1286
|
+
override fun setHMargins(left: Float?, right: Float?) {
|
|
1287
|
+
left?.let { settings.marginLeft = it }
|
|
1288
|
+
right?.let { settings.marginRight = it }
|
|
1289
|
+
}
|
|
1290
|
+
override fun setVMargins(top: Float?, bottom: Float?) {
|
|
1291
|
+
top?.let { settings.marginTop = it }
|
|
1292
|
+
bottom?.let { settings.marginBottom = it }
|
|
1293
|
+
}
|
|
1294
|
+
override var enabled: Boolean
|
|
1295
|
+
get() = settings.enabled
|
|
1296
|
+
set(value) { settings.enabled = value }
|
|
1297
|
+
override var position: Int
|
|
1298
|
+
get() = settings.position
|
|
1299
|
+
set(value) {
|
|
1336
1300
|
settings.position = value
|
|
1337
1301
|
}
|
|
1338
1302
|
}
|
|
@@ -132,6 +132,16 @@ open class RCTMGLMapViewManager(context: ReactApplicationContext?) :
|
|
|
132
132
|
mapView!!.setReactAttributionPosition(attributionPosition);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
+
@ReactProp(name = "attributionViewMargins")
|
|
136
|
+
fun setAttributionViewMargins(mapView: RCTMGLMapView?, scaleBarMargins: ReadableMap?) {
|
|
137
|
+
mapView!!.setReactAttributionViewMargins(scaleBarMargins!!);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
@ReactProp(name = "attributionViewPosition")
|
|
141
|
+
fun setAttributionViewPosition(mapView: RCTMGLMapView?, scaleBarPosition: Int) {
|
|
142
|
+
mapView!!.setReactAttributionViewPosition(scaleBarPosition!!)
|
|
143
|
+
}
|
|
144
|
+
|
|
135
145
|
@ReactProp(name = "logoEnabled")
|
|
136
146
|
fun setLogoEnabled(mapView: RCTMGLMapView?, logoEnabled: Boolean?) {
|
|
137
147
|
mapView!!.setReactLogoEnabled(logoEnabled);
|
package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java
CHANGED
|
@@ -24,6 +24,7 @@ import com.mapbox.maps.extension.style.types.StyleTransition;
|
|
|
24
24
|
import com.mapbox.maps.extension.style.light.generated.Light;
|
|
25
25
|
import com.mapbox.maps.extension.style.light.LightPosition;
|
|
26
26
|
import com.mapbox.rctmgl.utils.DownloadMapImageTask;
|
|
27
|
+
import com.mapbox.rctmgl.utils.Logger;
|
|
27
28
|
|
|
28
29
|
import java.util.List;
|
|
29
30
|
|
|
@@ -82,7 +83,11 @@ public class RCTMGLStyleFactory {
|
|
|
82
83
|
style.addImage(styleValue, new DownloadMapImageTask.OnAllImagesLoaded() {
|
|
83
84
|
@Override
|
|
84
85
|
public void onAllImagesLoaded() {
|
|
85
|
-
|
|
86
|
+
try {
|
|
87
|
+
RCTMGLStyleFactory.setFillPattern(layer, styleValue);
|
|
88
|
+
} catch (RuntimeException exception) {
|
|
89
|
+
Logger.INSTANCE.e("RCTMGLFill",String.format("Exception failed during setFillPattern: %s", exception.getMessage()));
|
|
90
|
+
}
|
|
86
91
|
}
|
|
87
92
|
});
|
|
88
93
|
break;
|
|
@@ -176,7 +181,11 @@ public class RCTMGLStyleFactory {
|
|
|
176
181
|
style.addImage(styleValue, new DownloadMapImageTask.OnAllImagesLoaded() {
|
|
177
182
|
@Override
|
|
178
183
|
public void onAllImagesLoaded() {
|
|
179
|
-
|
|
184
|
+
try {
|
|
185
|
+
RCTMGLStyleFactory.setLinePattern(layer, styleValue);
|
|
186
|
+
} catch (RuntimeException exception) {
|
|
187
|
+
Logger.INSTANCE.e("RCTMGLLine",String.format("Exception failed during setLinePattern: %s", exception.getMessage()));
|
|
188
|
+
}
|
|
180
189
|
}
|
|
181
190
|
});
|
|
182
191
|
break;
|
|
@@ -243,7 +252,11 @@ public class RCTMGLStyleFactory {
|
|
|
243
252
|
style.addImage(styleValue, new DownloadMapImageTask.OnAllImagesLoaded() {
|
|
244
253
|
@Override
|
|
245
254
|
public void onAllImagesLoaded() {
|
|
246
|
-
|
|
255
|
+
try {
|
|
256
|
+
RCTMGLStyleFactory.setIconImage(layer, styleValue);
|
|
257
|
+
} catch (RuntimeException exception) {
|
|
258
|
+
Logger.INSTANCE.e("RCTMGLSymbol",String.format("Exception failed during setIconImage: %s", exception.getMessage()));
|
|
259
|
+
}
|
|
247
260
|
}
|
|
248
261
|
});
|
|
249
262
|
break;
|
|
@@ -572,7 +585,11 @@ public class RCTMGLStyleFactory {
|
|
|
572
585
|
style.addImage(styleValue, new DownloadMapImageTask.OnAllImagesLoaded() {
|
|
573
586
|
@Override
|
|
574
587
|
public void onAllImagesLoaded() {
|
|
575
|
-
|
|
588
|
+
try {
|
|
589
|
+
RCTMGLStyleFactory.setFillExtrusionPattern(layer, styleValue);
|
|
590
|
+
} catch (RuntimeException exception) {
|
|
591
|
+
Logger.INSTANCE.e("RCTMGLFillExtrusion",String.format("Exception failed during setFillExtrusionPattern: %s", exception.getMessage()));
|
|
592
|
+
}
|
|
576
593
|
}
|
|
577
594
|
});
|
|
578
595
|
break;
|
|
@@ -727,7 +744,11 @@ public class RCTMGLStyleFactory {
|
|
|
727
744
|
style.addImage(styleValue, new DownloadMapImageTask.OnAllImagesLoaded() {
|
|
728
745
|
@Override
|
|
729
746
|
public void onAllImagesLoaded() {
|
|
730
|
-
|
|
747
|
+
try {
|
|
748
|
+
RCTMGLStyleFactory.setBackgroundPattern(layer, styleValue);
|
|
749
|
+
} catch (RuntimeException exception) {
|
|
750
|
+
Logger.INSTANCE.e("RCTMGLBackground",String.format("Exception failed during setBackgroundPattern: %s", exception.getMessage()));
|
|
751
|
+
}
|
|
731
752
|
}
|
|
732
753
|
});
|
|
733
754
|
break;
|
package/android/rctmgl/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTLayer.kt
CHANGED
|
@@ -21,8 +21,6 @@ import com.mapbox.rctmgl.utils.ExpressionParser
|
|
|
21
21
|
import java.lang.ClassCastException
|
|
22
22
|
import com.mapbox.rctmgl.utils.Logger
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
// import com.mapbox.rctmgl.utils.ExpressionParser;
|
|
26
24
|
abstract class RCTLayer<T : Layer?>(protected var mContext: Context) : AbstractSourceConsumer(
|
|
27
25
|
mContext
|
|
28
26
|
) {
|
|
@@ -253,15 +251,12 @@ abstract class RCTLayer<T : Layer?>(protected var mContext: Context) : AbstractS
|
|
|
253
251
|
super.removeFromMap(mapView)
|
|
254
252
|
}
|
|
255
253
|
|
|
256
|
-
// v10TOOD: adding anything seems to make getStyle null
|
|
257
|
-
// return mMap.getStyle();
|
|
258
254
|
private val style: Style?
|
|
259
|
-
private get()
|
|
255
|
+
private get() =
|
|
260
256
|
if (mMap == null) {
|
|
261
257
|
null
|
|
262
|
-
} else mMapView
|
|
258
|
+
} else mMapView?.savedStyle
|
|
263
259
|
|
|
264
|
-
// return mMap.getStyle();
|
|
265
260
|
abstract fun makeLayer(): T
|
|
266
261
|
abstract fun addStyles()
|
|
267
262
|
private fun hasInitialized(): Boolean {
|