summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2015-12-16 11:13:59 -0800
committerJohn Firebaugh <john.firebaugh@gmail.com>2015-12-16 16:15:28 -0800
commit2ee52915fe4d2889ddac217678d40dca9beae176 (patch)
tree5906ad432e1fe755c3b87199b067714c6d51034c
parent2b782308e5bf0e33f2267499630f25006b451cf7 (diff)
downloadqtlocation-mapboxgl-2ee52915fe4d2889ddac217678d40dca9beae176.tar.gz
[ios, android] Add a method to invalidate custom layers, forcing a repaint
-rw-r--r--include/mbgl/ios/MGLMapView+MGLCustomStyleLayerAdditions.h2
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java5
-rw-r--r--platform/ios/MGLMapView.mm5
3 files changed, 12 insertions, 0 deletions
diff --git a/include/mbgl/ios/MGLMapView+MGLCustomStyleLayerAdditions.h b/include/mbgl/ios/MGLMapView+MGLCustomStyleLayerAdditions.h
index afb21f9b6a..3c74b02969 100644
--- a/include/mbgl/ios/MGLMapView+MGLCustomStyleLayerAdditions.h
+++ b/include/mbgl/ios/MGLMapView+MGLCustomStyleLayerAdditions.h
@@ -20,6 +20,8 @@ typedef void (^MGLCustomStyleLayerCompletionHandler)(void);
- (void)insertCustomStyleLayerWithIdentifier:(NSString *)identifier preparationHandler:(MGLCustomStyleLayerPreparationHandler)preparation drawingHandler:(MGLCustomStyleLayerDrawingHandler)drawing completionHandler:(MGLCustomStyleLayerCompletionHandler)completion belowStyleLayerWithIdentifier:(nullable NSString *)otherIdentifier;
+- (void)invalidateCustomStyleLayers;
+
@end
NS_ASSUME_NONNULL_END
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
index f169e98b86..e36a08aed3 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/views/MapView.java
@@ -3792,6 +3792,11 @@ public final class MapView extends FrameLayout {
mNativeMapView.addCustomLayer(customLayer, before);
}
+ @UiThread
+ public void invalidateCustomLayers() {
+ mNativeMapView.update();
+ }
+
private void setWidgetGravity(@NonNull final View view, int gravity) {
LayoutParams layoutParams = (LayoutParams) view.getLayoutParams();
layoutParams.gravity = gravity;
diff --git a/platform/ios/MGLMapView.mm b/platform/ios/MGLMapView.mm
index e9657f5616..ab18c1b4c7 100644
--- a/platform/ios/MGLMapView.mm
+++ b/platform/ios/MGLMapView.mm
@@ -3675,4 +3675,9 @@ void MGLFinishCustomStyleLayer(void *context)
context, otherIdentifier.UTF8String);
}
+- (void)invalidateCustomStyleLayers
+{
+ _mbglMap->update(mbgl::Update::Repaint);
+}
+
@end