@@ -377,7 +377,9 @@ export class MapboxView extends MapboxViewBase {
377
377
}
378
378
379
379
[ telemetryProperty . setNative ] ( value : boolean ) {
380
- com . mapbox . mapboxsdk . Mapbox . getTelemetry ( ) . setUserTelemetryRequestState ( value ) ;
380
+ if ( com . mapbox . mapboxsdk . Mapbox . getTelemetry ( ) ) {
381
+ com . mapbox . mapboxsdk . Mapbox . getTelemetry ( ) . setUserTelemetryRequestState ( value ) ;
382
+ }
381
383
}
382
384
}
383
385
@@ -584,7 +586,7 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
584
586
if ( settings . showUserLocation ) {
585
587
this . requestFineLocationPermission ( )
586
588
. then ( ( ) => {
587
- this . showUserLocationMarker ( { } ) ;
589
+ this . showUserLocationMarker ( settings . locationComponentOptions ) ;
588
590
589
591
// if we have a callback defined, call it.
590
592
@@ -2793,9 +2795,13 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
2793
2795
2794
2796
this . requestFineLocationPermission ( )
2795
2797
. then ( ( ) => {
2796
- this . showUserLocationMarker ( {
2797
- useDefaultLocationEngine : true
2798
- } ) ;
2798
+ if ( this . _locationComponent ) {
2799
+ this . changeUserLocationMarkerMode ( options . renderMode || 'COMPASS' , options . cameraMode || 'TRACKING' ) ;
2800
+ } else {
2801
+ this . showUserLocationMarker ( {
2802
+ useDefaultLocationEngine : true
2803
+ } ) ;
2804
+ }
2799
2805
} )
2800
2806
. catch ( ( err ) => {
2801
2807
console . error ( 'Location permission denied. error:' , err ) ;
@@ -2914,13 +2920,13 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
2914
2920
case 'TRACKING' :
2915
2921
return modeRef . TRACKING ;
2916
2922
2917
- case 'TRACK_COMPASS ' :
2923
+ case 'TRACKING_COMPASS ' :
2918
2924
return modeRef . TRACKING_COMPASS ;
2919
2925
2920
2926
case 'TRACKING_GPS' :
2921
2927
return modeRef . TRACKING_GPS ;
2922
2928
2923
- case 'TRACK_GPS_NORTH ' :
2929
+ case 'TRACKING_GPS_NORTH ' :
2924
2930
return modeRef . TRACKING_GPS_NORTH ;
2925
2931
}
2926
2932
}
@@ -3177,26 +3183,36 @@ export class Mapbox extends MapboxCommon implements MapboxApi {
3177
3183
return ;
3178
3184
}
3179
3185
3180
- if ( Trace . isEnabled ( ) ) {
3181
- CLog ( CLogTypes . info , 'changeUserLocationMarkerMode(): current render mode is:' , this . _locationComponent . getRenderMode ( ) ) ;
3182
- }
3186
+ if ( cameraModeString ) {
3187
+ const cameraMode = this . _stringToCameraMode ( cameraModeString ) ;
3188
+ if ( Trace . isEnabled ( ) ) {
3189
+ CLog ( CLogTypes . info , `Mapbox::changeUserLocationMarkerMode(): current camera mode is: ${ this . _locationComponent . getCameraMode ( ) } ` ) ;
3190
+ CLog ( CLogTypes . info , `Mapbox::changeUserLocationMarkerMode(): changing camera mode to: ${ cameraMode } ` ) ;
3191
+ }
3183
3192
3184
- if ( Trace . isEnabled ( ) ) {
3185
- CLog ( CLogTypes . info , "Mapbox::changeUserLocationMarkerMode(): changing renderMode to '" + renderModeString + "' cameraMode '" + cameraModeString + "'" ) ;
3193
+ this . _locationComponent . setCameraMode ( cameraMode ) ;
3194
+
3195
+ if ( Trace . isEnabled ( ) ) {
3196
+ CLog ( CLogTypes . info , `Mapbox::changeUserLocationMarkerMode(): new camera mode is: ${ this . _locationComponent . getCameraMode ( ) } ` ) ;
3197
+ }
3186
3198
}
3187
3199
3188
- const cameraMode = this . _stringToCameraMode ( cameraModeString ) ;
3189
- const renderMode = this . _stringToRenderMode ( renderModeString ) ;
3200
+ if ( renderModeString ) {
3201
+ const renderMode = this . _stringToRenderMode ( renderModeString ) ;
3202
+ if ( Trace . isEnabled ( ) ) {
3203
+ CLog ( CLogTypes . info , `Mapbox::changeUserLocationMarkerMode(): current render mode is: ${ this . _locationComponent . getRenderMode ( ) } ` ) ;
3204
+ CLog ( CLogTypes . info , `Mapbox::changeUserLocationMarkerMode(): changing render mode to: '${ renderMode } '` ) ;
3205
+ }
3190
3206
3191
- this . _locationComponent . setCameraMode ( cameraMode ) ;
3192
- this . _locationComponent . setRenderMode ( renderMode ) ;
3207
+ this . _locationComponent . setRenderMode ( renderMode ) ;
3193
3208
3194
- if ( Trace . isEnabled ( ) ) {
3195
- CLog ( CLogTypes . info , 'changeUserLocationMarkerMode(): new render mode is:' , this . _locationComponent . getRenderMode ( ) ) ;
3209
+ if ( Trace . isEnabled ( ) ) {
3210
+ CLog ( CLogTypes . info , 'changeUserLocationMarkerMode(): new render mode is:' , this . _locationComponent . getRenderMode ( ) ) ;
3211
+ }
3196
3212
}
3197
3213
} catch ( ex ) {
3198
3214
if ( Trace . isEnabled ( ) ) {
3199
- CLog ( CLogTypes . info , 'Error in mapbox.showUserLocationMarker : ' + ex ) ;
3215
+ CLog ( CLogTypes . info , 'Error in mapbox.changeUserLocationMarkerMode : ' + ex ) ;
3200
3216
}
3201
3217
reject ( ex ) ;
3202
3218
}
0 commit comments