diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2015-12-16 11:13:59 -0800 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2015-12-16 16:15:28 -0800 |
commit | 2ee52915fe4d2889ddac217678d40dca9beae176 (patch) | |
tree | 5906ad432e1fe755c3b87199b067714c6d51034c | |
parent | 2b782308e5bf0e33f2267499630f25006b451cf7 (diff) | |
download | qtlocation-mapboxgl-2ee52915fe4d2889ddac217678d40dca9beae176.tar.gz |
[ios, android] Add a method to invalidate custom layers, forcing a repaint
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 |