summaryrefslogtreecommitdiff
path: root/platform/darwin/src/MGLSource_Private.h
diff options
context:
space:
mode:
authorJesse Bounds <jesse@rebounds.net>2016-11-14 15:50:33 -0800
committerGitHub <noreply@github.com>2016-11-14 15:50:33 -0800
commit1c9d314236736bf47e33fb95d2b457a5650fc519 (patch)
tree48b610e5bc18be13de161707488d1cb43b950c9d /platform/darwin/src/MGLSource_Private.h
parent56c2272b7dc261f988c70e0f8cb90ff853932011 (diff)
downloadqtlocation-mapboxgl-1c9d314236736bf47e33fb95d2b457a5650fc519.tar.gz
[ios, macos] Take back source and layer ownership on removal (#7048)
If a source or layer is removed from the style, recapture the unique pointer ownership. This makes it safe to add back sources and layers after they have been removed.
Diffstat (limited to 'platform/darwin/src/MGLSource_Private.h')
-rw-r--r--platform/darwin/src/MGLSource_Private.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/platform/darwin/src/MGLSource_Private.h b/platform/darwin/src/MGLSource_Private.h
index dff230ede5..d360e71f3c 100644
--- a/platform/darwin/src/MGLSource_Private.h
+++ b/platform/darwin/src/MGLSource_Private.h
@@ -28,4 +28,13 @@
*/
- (void)addToMapView:(MGLMapView *)mapView;
+/**
+ Removes the mbgl source that this object represents from the mbgl map.
+
+ When a mbgl source is removed, ownership of the object is transferred back
+ to the `MGLSource` instance and the unique_ptr reference is valid again. It is
+ safe to add the source back to the style after it is removed.
+ */
+- (void)removeFromMapView:(MGLMapView *)mapView;
+
@end