From 0fcfa3a7088c3148b2ecd7bd365ab0ba7df6e3b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Vendramini?= Date: Thu, 11 Jan 2018 08:41:15 -0200 Subject: [PATCH 1/2] Add missing import on AirMapModule.java (#1958) --- .../main/java/com/airbnb/android/react/maps/AirMapModule.java | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/android/src/main/java/com/airbnb/android/react/maps/AirMapModule.java b/lib/android/src/main/java/com/airbnb/android/react/maps/AirMapModule.java index 02c43b2fb..2cec24eba 100644 --- a/lib/android/src/main/java/com/airbnb/android/react/maps/AirMapModule.java +++ b/lib/android/src/main/java/com/airbnb/android/react/maps/AirMapModule.java @@ -12,6 +12,7 @@ import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.bridge.WritableMap; import com.facebook.react.bridge.WritableNativeMap; import com.facebook.react.uimanager.NativeViewHierarchyManager; import com.facebook.react.uimanager.UIBlock; From 9f592ba8fd41eba4cd60e4daaddf0857cf8688bb Mon Sep 17 00:00:00 2001 From: Olof Dahlbom Date: Thu, 11 Jan 2018 15:48:55 +0100 Subject: [PATCH 2/2] Fix callouts appearing behind markers (#1846) A bit ugly, but works well. --- lib/ios/AirMaps/AIRMapMarker.m | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/ios/AirMaps/AIRMapMarker.m b/lib/ios/AirMaps/AIRMapMarker.m index 8be20784e..9fc6c96f9 100644 --- a/lib/ios/AirMaps/AIRMapMarker.m +++ b/lib/ios/AirMaps/AIRMapMarker.m @@ -14,8 +14,11 @@ #import #import #import +NSInteger const CALLOUT_OPEN_ZINDEX_BASELINE = 999; @implementation AIREmptyCalloutBackgroundView +bool _calloutIsOpen = NO; +NSInteger _zIndexBeforeOpen = 0; @end @implementation AIRMapMarker { @@ -137,6 +140,9 @@ - (void)fillCalloutView:(SMCalloutView *)calloutView - (void)showCalloutView { + _calloutIsOpen = YES; + [self setZIndex:_zIndexBeforeOpen]; + MKAnnotationView *annotationView = [self getAnnotationView]; [self setSelected:YES animated:NO]; @@ -222,6 +228,8 @@ - (void)_handleTap:(UITapGestureRecognizer *)recognizer { - (void)hideCalloutView { + _calloutIsOpen = NO; + [self setZIndex:_zIndexBeforeOpen]; // hide the callout view [self.map.calloutView dismissCalloutAnimated:YES]; @@ -298,8 +306,9 @@ - (void)setPinColor:(UIColor *)pinColor - (void)setZIndex:(NSInteger)zIndex { - _zIndex = zIndex; - self.layer.zPosition = _zIndex; + _zIndexBeforeOpen = zIndex; + _zIndex = _calloutIsOpen ? zIndex + CALLOUT_OPEN_ZINDEX_BASELINE : zIndex; + self.layer.zPosition = zIndex; } @end