summaryrefslogtreecommitdiff
path: root/platform/ios/MGLUserLocation.m
diff options
context:
space:
mode:
Diffstat (limited to 'platform/ios/MGLUserLocation.m')
-rw-r--r--platform/ios/MGLUserLocation.m22
1 files changed, 14 insertions, 8 deletions
diff --git a/platform/ios/MGLUserLocation.m b/platform/ios/MGLUserLocation.m
index 054dfa686d..acc3de75b5 100644
--- a/platform/ios/MGLUserLocation.m
+++ b/platform/ios/MGLUserLocation.m
@@ -1,17 +1,14 @@
#import "MGLUserLocation_Private.h"
-@implementation MGLUserLocation
-{
- CLLocationCoordinate2D _coordinate;
-}
+#import "MGLMapView.h"
-@synthesize coordinate = _coordinate;
+@implementation MGLUserLocation
- (instancetype)init
{
if (self = [super init])
{
- _coordinate = CLLocationCoordinate2DMake(MAXFLOAT, MAXFLOAT);
+ _location = [[CLLocation alloc] initWithLatitude:MAXFLOAT longitude:MAXFLOAT];
}
return self;
@@ -34,11 +31,15 @@
{
[self willChangeValueForKey:@"location"];
_location = newLocation;
- _coordinate = _location.coordinate;
[self didChangeValueForKey:@"location"];
}
}
+- (BOOL)isUpdating
+{
+ return self.mapView.userTrackingMode != MGLUserTrackingModeNone;
+}
+
- (void)setHeading:(CLHeading *)newHeading
{
if (newHeading.trueHeading != _heading.trueHeading)
@@ -49,9 +50,14 @@
}
}
+- (CLLocationCoordinate2D)coordinate
+{
+ return self.location.coordinate;
+}
+
- (NSString *)title
{
- if ( ! _title) return @"Current Location";
+ return (_title ? _title : @"Current Location");
}
@end